Basic functionality and tests
Commiting source