Guide to Type-Checking with OOP

The main problem with metatable OOP is a typechecking…
Its nearly impossible to be implemented properly here so consider using pointer OOP