Remove some warnings
Add some code for the type system, add it to Makefile
Add some more type definitions
Add constructors
Add docs on evaluation rules