v4

1. Revert `^` behavior to SemVer 2.x.
2. Handle prereleases in less surprising ways.
3. Document desugaring advanced range syntax to simple comparators.
1.2.4-beta.1 would not be allowed, though, right? might be worth adding that here.