Adding pass by value support for ctypes callback function return types.

* Changing Code generation to treat all struct returns as void * returns. These are unboxed within the C glue code
* Redefining Underlying Python struct that hold function pointers to python callbacks