What are variables and how do I use them in my contracts?