Lots of stuff (smaller)...
Addded simple tests