Second initial commit :P
First refactor. That was quick...
Provisional update to MANIFEST.in
Implements code and tests