Work on function definitions. Currently severely broken.