Provide support for running and switching between tests in Grails.

This provides a compatibility with a grails application:

 * to run the compilation
 * to run the tests
 * switch between implementation and a test case (my main concern)

The actual implementation is good enough for now. Although, I'm wondering if `projectile-test-suffix` should return a list instead of just a single suffix? This is because in grails, depending on which test runner you are using, tests can have suffixes: `Spec`, `Tests`, maybe even `Test`.