track OS, node & app version, updated docs & tests

As promised. This is crucial for debugging. Fixes https://github.com/yeoman/insight/issues/12. Note that tracking app version is sort of a hack using custom dimensions. Once we refactor from using GA web tracking to GA app tracking, we won't need it anymore. However we'll still need custom dimensions to track OS and node versions.

This should not break any currently deployed implementations, only adding new data.
Yeah, didn't mean you should revert to 0.0.0. Just would it be better to just not send that prop when undefined?