test data
re-implemented how functions are handled

It's now possible to call functions from within functions.
Recursive/circular function calls cause a stack overflow at the moment.