Now with functions and core procedures.
Merge pull request #9 from isaacrg/master

Now with functions and core procedures. @benjimarshall to add variation.