Make all the tests pass and cleanup docs, tests. Renamed some methods.