Rewrite codebase to use generic classes that rely on the same methods (more DRY)
Resolve branch merege
Add in new performance tests. Unexpected results...
Updates to the API and Docs. Version bump for patches and new API introductions. tess added for some new functionality.