Start specifying types and document timezone()
Define base types and continue documenting
More docs and refactorings
Docs and refactorings
Write tests for from()
Document, refactor, and test conversion functions