#1036: rename Function -> CppFunction in haskell bindings

The haskell bindings used the name Function already, so this has been renamed CppFunction to avoid conflict