also try the legacy matcher when determining prereleases

2 changes here:

1.  our prerelease function now additionally tries the legacy matcher, when normalization fails (i.e. when it fails to be close to PEP426).  this specifically makes it so something like  "1.3-fork1" will *not* be called a prerelease
2.  we now use the distlib  `is_prelease` properties, which were added after our function was added.