Delete TestApplication2 (use TestApplication)
EntitySpec: sub-classing and setting policies

- Complicated generics necessary for sub-classing, to add
  builder methods with correct return type
- Support adding policies through EntitySpec
- Support setting entity's displayName
- Entity lifecycle methods:
-- Avoid calling configure() in constructor
-- Call postConstruct()
ControlledDynamicWebAppClusterImpl - use postConstruct
Incorporate review comment: declare feed field volatile
Remove test/brooklyn.entity.proxying.MyEntity

- Instead use TestEntity
Brooklyn CLI: accept ApplicationBuilder class
Brooklyn rest: don't cast to AbstractApplication or AbstractEntity

- because now using dynamic proxies, so reference to entity will
  not be of these types; always use interfaces.
Add EntityInternal interface

- Move things from EntityLocal to EntityInternal
- Adds to Entity add/removePolicy and add/removeEnricher,
  which were previously just on EntityLocal.
EntityLocal: deprecate methods
Convert web-cluster examples etc (for interface+impl) - WORK IN PROGRESS
Convert whirr/hadoop to interface+impl