Refactored Type and made Type and SynType distinct.
Created anonymous types