Extended test suite, enhanced index suggestions, conformed to the style guidelines

This pull request is a richer version of recently closed https://github.com/brandonblack/mongo-tools/pull/56. A discussion has been started in the mentioned pull request, I would like to continue it here (@brandonblack, @macworld). The suggestions regarding coding style have been addressed, although the discussion on evaluator result model remains open.

Although we might decide to change our evaluator result model, I think we shouldn't wait with merging this pull request until that happens.

Please look into the commits' description for description of changes.