Refactor types api
This changes the new element_enums.py to be an all purpose place for low level simple data types to live, in types.py
Now the toplevel __init__.py is reordered to import simple types in advance of complex objects, and the API docs are updated to include the new page.