Refactor MultiDatabaseTestCase

Here are the changes I was announcing in my email
1. I've moved compareQueries() and runQuery() to the base class EnsTestCase.
2. MultiDatabaseTestCase.getSpeciesDatabaseMap() was used in two places, and in both cases, the map
 - Some Compara tests. The return type of getSpeciesDatabaseMap() was not optimal, and I've simply implemented the optimal version in a new Compara abstract class
 - MultiDatabaseTestCase itself, in checkSQLAcrossSpecies(). As it was the only remaining call, I've inserted and rewritten this bit. The funny thing is that checkSQLAcrossSpecies() ignores the DatabaseRegistry object it gets as an argument