Switch to regular expression matching instead of string splitting

In preliminary testing, using a regular expression proved to be about 2x
faster than using string splitting. I am not sure if this is because the
Ruby VM can optimize them or if they are just faster. Nonetheless, here
are some benchmarks for the future diggers:

String splitting:

        user     system      total        real
>= 0.0.0  6.660000   0.520000   7.180000 (  7.172648)
~> 1.0    8.300000   0.550000   8.850000 (  8.864554)



Magical regex:
        user     system      total        real
>= 0.0.0  3.970000   0.300000   4.270000 (  4.282498)
~> 1.0    3.590000   0.250000   3.840000 (  3.839798)

As you can see, the regular expression is about 2x faster.
Freeze the regular expression
prerelease -> pre_release
Add docs for Constraint#inspect
Add docs for Constraint#to_s
Group operators for comparing
Use lambdas for comparisons
Document Constraint#DEFAULT_OPERATOR
Force a default constraint
Remove unused code
Merge pull request #2 from berkshelf/sethvargo/fast_and_furious

Speed improvements