Imp/npm install checks

I will happily transfer the module to the org if we decide to take 
this PR. isaacs is already added as owner for the package.

People, including me want to add/change things in `install.js` -
@luk and @isaacs are right when they say that we should not add
more and more code to it. 

So the only option is to remove more and more code from install.js into 
own modules. This has a nice side effect, because it makes the small 
functions testable with real unit-tests (which is also a ticket tagged
with i-wanna-be-the-very best). The module `npm-install-checks` has tests 
for most of the extracted functions now. 

This removes the following checks from `install.js` into an own module, which are run
during installation:

- checkEngine
- checkPlatform
- checkCycle
- checkGit