Merge pull request #255 from benmccann/tests-not-running

Fix the tests so that they run for me
Update ES and MongoDB version

- Unit tested with ES 1.1.1 and Mongo 2.4.10
Hide details of obtaining MongoDB port numbers from all the individual db test classes
Refactor RiverMongoDBTestAbstract to make the mongo executable a test parameter, so all subclass tests can be run against multiple mongodb back-ends
Copy sources of a couple flapdoodle classes which will have to be modified to make Toku downloading work
Rename copied flapdoodle classes to avoid confusion
Add an "IDownloader" parameter to ArtifactStore2
Copy source of flapdoodle Downloader to new file for customization
Modify copied Downloader source to define TokuDownloader
Create TokuMXStarter
Use TokuMXStarter in RiverMongoDBTestAbstract
Implement workaround for bug preventing multiple instances from extracting libraries to the same paths
Remove noargs constructor from RiverMongoDBTestAbstract; make all non-GridFS tests run against both TokuMX and vanilla MongoDB
Check for a primary in isReplicaSetStarted(). TokuMX sometimes hasn't elected a master yet as soon as vanilla MongoDB has.
Make sure river and index names in tests are unique to test class instances (invocations with TokuMX vs. vanilla MongoDB)
Print a more useful string for each test class instance, in test reports that include it (e.g.: target/surefire-reports/Surefire suite/Surefire test.html)
RiverMongoStoreStatisticsTest: use different index and index type for TokuMX and vanilla MongoDB
Explicitly reference same outputCollection constant in MapReduceCommand in RiverMongoMapReduceTest as is referenced in queries
Improve failure messages for RiverMongoMapReduceTest
Upgrade to MongoDB 2.6.0

- All unit test passed but still running Mongo Java Driver 2.11.4