Laid out basic framework for type system.