changed function parsing to use splitBody method
added function generator base
removed old generator experiments