Ruby functions now receive/return data using the state/stack provided to them instead of the one they were defined in.

Fixes #19. C closures now use the lua state provided to them instead of the state they were defined in. This allows them to operate correctly from coroutines.