Better errors for empty test suites, fixes #104

This PR adds errors for some unlikely boundary conditions, such as tests without test methods, or suites without tests. Otherwise these cause strange errors. 

The class parser is also changed to only match test classes that end with `*Test`. This allows test cases that have helper classes embedded in them, where previously the helper classes would be returned as tests (with no actual tests).
But the SuiteLoader is restricted to Test.php https://github.com/brianium/paratest/blob/master/src/ParaTest/Runners/PHPUnit/SuiteLoader.php#L27 and PSR forces a ...Test.php to contain a class ending with "Test". So I would say this is totally fine even if it leads to a "wontfix" for https://github.com/brianium/paratest/issues/33