Switch to Minitest::Test instead of Test::Unit::TestCase

This gives us a consistent test framework across all Ruby versions which should help avoid errors that are only found when CI runs the tests on different Rubies. (And this fixes an immediate bug where there's no  `skip` method in the version of test-unit we're currently using only on Ruby 2.2.)

/cc @arfon @bkeepers 
I think rescuing and reporting a failure is :+1: