Sort Ruby versions when listing available definitions

Stable releases should now be sorted as a higher version than preview releases or RCs. For instance:

- 1.9.3-preview < 1.9.3-rc1 < 1.9.3-p0
- 2.1.0-dev < 2.1.0-rc1 < 2.1.0
- jruby-1.7.0-preview1 < jruby-1.7.0-rc1 < jruby-1.7.0

Credit for the basis of this code goes to @mpapis and https://github.com/postmodern/chruby/pull/277#issuecomment-48812444

Closes #628, closes #512, #492

/cc @havenwood @nirvdrum