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.
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
expand REST JsonUtils to better determine whether things can be jsonified;
and create similar (better) mechanism as part of Jsonya
(next commit will remove JsonUtils as it will be replaced by Jsonya routines)
remove rest project's JsonUtils class in favour of Jsonya support for converting things to nice json primitives,
and add javadoc to Jsonya
remove STATUS_JSON sensor as STATUS_BSON serialises as JSON map now through the rest api
Merge pull request #1124 from ahgittin/json

improve how we return json via the rest client, with jsonya support for translating objects to json primitives
add brooklyn-api to rest-api pom
Adds StringPredicates.isBlank
Fix MutableList.copyOf(Iterable) to accept nulls
Adds Entity.addPolicy(PolicySpec) and addEnricher(EnricherSpec)
Adds entity CHILD_ADDED/CHILD_REMOVED sensors
Deprecate old enrichers (prefer new builder)
Adds Enrichers.builder()