added even more types. starting to see a pattern creating newtype existential singleton wrappers