Make the Version class include Comparable
Update compare tests to use Comparable operators

I've left the existing assert_equal to match against the output of the
<=> operator, but added the new >, >=, <, <=, == and != tests to verify
that there are no issues in Comparable
Refactor code into individual class subdirectories

This makes it easier to enhance VMLib to add new features such as range