Upgrading functions to Feature()s
Added tests
Merge branch 'evaluator-accepts-functions' into develop