Added return types to Functor classes, refactored evaluateTo, re-implemented if, input and iseq and some cleanup.
Removed some unneeded comments.