Update and stabilize SemVer

http://discuss.rust-lang.org/t/stabilizing-semver/376/18 got a lot of discussion, but kinda died out.

What do you think?
To stay consistent with parsing a `Semver`, should this return an enumeration of possible errors?