Split the alamatic.types module into smaller modules in a package.

These type definition files are going to get pretty big once they have
support for all of the operations, so splitting them up seems prudent.