There are currently no tests around the API. This makes refactoring dangerous or expensive. We should add some tests to avoid this cost.