Struct methods

This PR contains updates to the GoStruct value to allow calls to methods on structs. I have also added some tests.

To achieve this any functions discovered are wrapped in a FunctionCall type which calls the functions and converts the return value into an Otto value. I also fixed a small bug which caused the Object.getOwnPropertyNames() call to fail if the object was a pointer.