Begin third meta system attempt.

Sean Middleditch's implementation cannot be used for projects because it counts as academic plagarism.
Instead, I am building from scratch, reading the notes as I go.
The only parts borrowed are those that cannot be implemented any other way: mostly the bits that revolve around Get() checking if the type has meta information and switching between getting the TypeInfo from the static object or via GetType() virtual function. Everything else is from scratch from reading notes, although it ends up looking similar.

Any is going to be challenging.

Signed-off-by: Cody Duncan <CodyDuncan1260@live.com>