Functions can now have variable declarations anywhere

I made variable declarations a statement so that functions can have them anywhere in their body. Before they had to be declared at the top of a function. Also right now we have statements ending in semi colons so I updated the func_with_body test to reflect that.
Sorry I had to move those functions up because they were needed to be defined before other functions.