Add some Tests
Some API changes / preparations for future