Minor tidies
CouchDB Entity
Make Java classes for suite of NoSQL example applications
Updates to NoSQL example applications and conversion from Groovy to Java
Tidy up NoSQL tests and convert from Groovy to Java
Changes from review comments including:
- Added CouchDB statistics polling
- Updated CassandraCluster member tracker and service state calculation
- Removed serialVersionUID
Add catalog entry for CouchDBNode
Tidied up MongoDB interface and added template parsing for config file
Update copyright and license comment and remove references to BasicEntitySpec
Merge pull request #577 from grkvlt/couchdb-entity

CouchDB Entity
Add AbstractEntity.addChild(EntitySpec)

- Use that in preference to:
  addChild(getEntityManager().createEntity(spec))
  or:
  getEntityManager().createEntity(spec.parent(this))
- Adds EntitySpecs.spec(Map, Class)
Fix brooklyn CLI when AbstractApplication used

- if app overrides postConstruct, then ensure it gets called
Merge pull request #619 from aledsage/fix/api-addChild-entityspec

Add AbstractEntity.addChild(EntitySpec)
Rename ApplicationBuilder.createChild to addChild

- Adds ApplicationBuilder.addChild(EntitySpec) and 
  ApplicationBuilder.addChild(Map, Class)
- Deprecates the old createChild methods
- Updates all uses
Add guards to ApplicationBuilder for misuse

- throw if doBuild() calls manage()
- throw if concurrent calls to manage() attempted
- throw if tries to modify the appSpec after the app has been
  created (e.g. calling configure(Map))
- improves javadoc