Remove warning under Minitest 5

This PR addresses #460, and copies some work I did for shoulda-context:

* https://github.com/thoughtbot/shoulda-context/blob/master/lib/shoulda/context/test_framework_detection.rb
* https://github.com/thoughtbot/shoulda-context/blob/master/lib/shoulda/context.rb#L18

----

Under Minitest 5 (or a Rails 4.1 project), you will get a warning

    MiniTest::Unit::TestCase is now Minitest::Test.

when you attempt to run tests. This is because shoulda-matchers requires
'test/unit/testcase', even if Test::Unit is not being used.

It is not a good idea for shoulda-matchers to require *anything* that
the user may not be using, whether it's Test::Unit or RSpec. We should
assume that by the time shoulda-matchers is required, the user has
already required all of whatever test framework they are using, not none
or even some of that framework.