SemVer v2.0.0 parser, first pass

Obviously need to add ranges, and update all the tests still.

This is very much a wip.
replace valid() function
v2 Passing all tests
bsd license
v2.0.0-alpha
Merge branch 'v2'

This brings node-semver into much closer alignment with the semver.org
specification.