move types to Type.hs