Big update

Added abstract keyword.
Added multiple inheritance.
Added meta keyword.
Added metamethod support for classes. Have to be used together with the meta keyword. The following metamethods are supported right now: __len, __unm, __add, __sub, __mul, __div, __mod, __pow, __concat, __eq, __lt, __le, __tostring, __index, __newindex
Increased instantiation performance by avoiding unnecessary calls to the type() function.
Decreased memory usage by reusing the same class utility function reference, instead of redefining them again for each class.
Removed interfaces, it's core functionality can be replicated using the abstract keyword.
Many other changes that are mostly code refactoring.