Code review of first version

@Raynos 

Here is the first version converted into a pull request for you to code review. 

Things I know need improvement:
 - unit testing of individual modules in lib/
 - the post-install script and its test are kind of nasty. I'm not certain I'm going to keep that code since it mostly serves as a hack to avoid writing linter plugins for SublimeLinter, syntatic and flycheck.
 - my transform streams probably should have used streams2 via through2
 - there are a few files with too much indenting that need to be flattened out 
 - the lib.tape.js test is currently not portable because the json has absolute paths instead of relative paths.

There are more things, but I wanted to get something out the door that I can then improve in future commits.