Moved primitive types into separate module

Switched to applicative style get instances