Improvements to MongoDB replica sets

* Replica set class is Iterable<MongoDBServer>
* Replica set entity sets state to on fire if first server up fails to
  initiate the set
* Logging in MongoClientSupport improved when command result was not ok.
Support for Storm and ZooKeeper

- support for zookeeper cluster
- support for storm ui, nimbus, supervisor
add jmx support - unstable
storm fixes
Support for Storm and ZooKeeper

- support for zookeeper cluster
- support for storm ui, nimbus, supervisor
add jmx support - unstable
storm deployment entity, and fixes to make ui start
more storming, ensuring a wait before supervisors start, and tidying up how deployment gets defined
now storm uses a mutex to prevent nodes starting concurrently
rename fixing case of Zookeeper / ZooKeeper part 1 of 2
rename fixing case of Zoo[kK]eeper part 2 of 2
misc nosql fixes
fixes following code review for storm - fix ConfigKey refs, and some tidies to tests (though live tests still not working beyond andrea's machine)
another zookeeper case fix, 1 of 2
another zookeeper case fix, 2 of 2
Switch Iterable<MongoDBServer> for getReplicas() method
Merge pull request #1097 from sjcorbett/mongodb-tweaks

Small improvements to MongoDB replica sets
collect more sensors for mongo, and add a ResilientMongoApp; also let the default isRunning check fail more quickly (so failures are picked up sooner, as isRunning is done on restart, and clouds which black-hole ssh will cause the max timeout to occur, time num ssh retries (4) ); and also misc tidies to other items (mainly deprecation)
apply code review from #1118
Merge pull request #1118 from ahgittin/mongo

collect more sensors for mongo, and add a ResilientMongoApp
misc tidies from field
Merge pull request #1123 from ahgittin/fix/misc

misc tidies from the field