object system for Lua with virtual properties and method overriding hooks