Backwards-incompatible API changes

Closes #53