TODO Need to do the README and the rest of the documentation. Also need to add types/structs for the rest of the API. Also need to add tests.