Add tests; bugfixes