add #satisfies method

For checking if a string like "<= 1.6.0" or "~1.5" is satisfied by a `Semantic::Version`