ServerPoolTest: don’t ssh

- sets skipOnBoxBaseDirResolution for everything except live tests
extract an AbstractBrooklynObjectSpec to combine common spec code
code tidy of ArchiveBuilder
add tags to BrooklynObject and to specs, with tests that they get set and can be queried for all BO subtypes; other cleanup to testing and deprection
set uniqueTags for many enrichers and policies
use uniqueTag when checking for duplicate addition
add tests confirming that rebind works with tags and unique tags for entities and policies (no work needed because it is @SetFromFlag)
remove de-generifying TypeTokens methods
Support for cassandra v2 and vnodes

- adds USE_VNODES config for v1.2 and v2
- adds numTokensPerNode config
- adds checkForAndInstllJava7or8
- make AstyanaxSupport more robust for testing
Adds JmxHelper.terminate()

- important for entity stop(), if a connect attempt is taking a very
  long time to timeout and there are other jobs backing up.
PR #81: incorporate code review comments

- fix logging in CassandraDatacenterImpl
- fix CassandraNodeImpl.getTokens
- AstyanaxSupport: make keyspace name configurable, and better
  handle writeData failures when retries enabled.
- fix CassandraDatacenterLiveTest for v2: don’t explicitly set
  the JAVA_HOME
- add javadoc to MathPredicates.
This closes #81
use felix instead of osgi (as the signature of BundleWire called from BundleRevisionDependencies is different otherwise)
improve startup logging, mainly saying where persistence is being done for reference,
and moving OSGi timing to debug
some more tidying following emergency fix in https://github.com/apache/incubator-brooklyn/commit/bf627f76a7ad959a3beb7095e409a90e4cfa6e06
This closes #106
This closes #109
Adds BrooklynType super-class

- use PolicyDynamicType and EnricherDynamicType, deleting previous
  classes.
- adds BrooklynTypes, deprecating old EntityTypes
Add persisted getTags to BrooklynObject

- no longer just Entity
- deprecate tag methods on Entity (getTags/addTags/etc), and now have
  getTagSupport() so that the Entity interface doesn’t get as cluttered.
- adds requestPersist() to AbstractBrooklynObject
Push managementContext up to AbstractBrooklynObject