Separate test of different loaded features

Since minitest 5 randomizes the order in which tests are run, the tests
can no longer assume that certain files were not required earlier during
the test run. To solve this, the test suite is divided into several sets,
each with a different set of required files.
Unify quote use
Silence Minitest deprecation warnings

- Do not require minitest/unit: minitest/autorun will take care of
  this.
- Use new test class name to derive from.
Eliminate more test run order dependencies
Loosen ruby_parser dependency