initial commit of TypeScript type system -- direct clone of the 'bare'
type system
corrected the desugaring of TypeScript types (including properly
handling the (Strobe) intersection of two (TypeScript) arrows