Tidy up repo, change class name, add API

Fixes #3