Enhance

Makes functions a bit more concise
Adds Tests
More usage info