Give the ruby unit tests some love

The goal of this set of commits is mainly to migrate the ruby unit tests to a more "modern" layout:
- migrate to minitest. Ruby has embedded minitest since 1.9.3 but (unfortunately) it is incompatible with minitest 5. Meaning, we can't run Test::Unit-based tests if the minitest gem is installed. The way forward is IMO to simply migrate to using minitest directly
- fix a few issues and warnings reported by ruby -w