added some documentation to the type system.