- Rewrote type system (WIP)

Mostly work...
- Rewrote type system (WIP)

Generic types & methods should work now