Ignore eclipse project stuff.
Renaming, refactoring and documenting.

Added JavaDoc to public classes, methods and packages. To view issue mvn javadoc:javadoc on the command line, results will appear in target/site/apidocs.

Factored Iterator implementations into separate classes and pulled common code into a super class to avoid duplication.

Added TODO comments where appropriate, in particular where tests are still missing.

Renamed document providers to better reflect what method for retrieval (either REST API or Java API through joining the cluster) they use.