- added state->push_userdata method with object caching