Add code coverage reporting to the library. Expanding coverage to come later

cc @Raynos 

The coverage on the childProcess code is wrong since istanbul cannot check coverage in child processes, yet.

Also, wouldn't mind if you put up some PRs to make the module structure a bit more "standard", though I'll prefer to keep `npm run realpublish` until you've thought over another way to auto-generate code documentation. :)