Inital commit
Now with tests