Minor formatting fix
Merge pull request #384 from benmccann/enum-format

Minor formatting fix
Fix #381

Make sure all TokuMX are skipped on none supported platform.
The Slurper probably should not create its own MongoClient. The Javadocs for MongoClient state - For most applications, you should have one MongoClient instance for the entire JVM
Merge pull request #385 from benmccann/slurper-client

The Slurper probably should not create its own MongoClient
Fix a generics warning
Fix deprecation warnings related to MongoDB authentication
Improve the way we map urls to actions in the rest controller
Minor indentation fix
Rename client to esClient for clarity since we have both an elasticsearch and mongo client
Add intellij files to .gitignore
Fix comment formatting
Add sharing of MongoClients across rivers since MongoClient is resource intensive to create and there's meant to be only one when possible

Add options for controlling the number of connections

The options 'connections_per_host' (default 100) and 'threads_allowed_to_block_for_connection_multiplier' (default 5)
can be used to control how many connections are used at most for a single river.

The defaults are based on the values in MongoClientOptions.Builder for the 2.12.4 mongo-java-driver.
Remove unsused imports
Start the slurper threads from a separate thread

It can happen that at the time elasticsearch is started mongo is unavailable, and in those cases
the river would just fail. By moving the starting out we can easily retry without blocking the main
elasticsearch startup procedure.
Add a delay of 10s before retrying to connect to MongoDB.

Based on https://github.com/synhaptein/elasticsearch-river-mongodb/commit/cb6329dd19cbfc9f011316ee237db4b426c075ad