Initial commit
Add basic files
Add unit tests
Add istanbul code coverage
Clean up API