Added `DynamicMultiGroup` entity.
Address code review comments:
- Add descriptions to config keys.
- Don't modify shared EntitySpec instances.
- Remove unnecessary bits.
- Always run test setup.
- Strengthen assertions about member sets.
More code review fall-out:
- defensively copy Entity sets before creating iterator
- rename convenience methods (now childrenOf, membersOf)
- tidy-up concurrent map declaration / initialisation
More code review and tidy-up:
- Trivial tidy-up: sensor creation.
- Annotate @Beta
- New entity predicates: isChildOf() and isMemberOf()
- Switch from ENTITY_PROVIDER to ENTITY_FILTER.
- Renamed GROUP_SPEC to BUCKET_SPEC, for clarity.
Fix edge case of a bucket being removed the re-added.
Don't refer to an entity's display name after it has been unmanaged.
Another (last?!) round of code-review issues:
- Fix javadoc field references
- Drop unnecessary declaration specifiers from interface
- Allow more permissive predicates; use 'instanceOf' in test
Trivial: needn't care about sensor value types.
Merge pull request #1247 from alasdairhodge/dynamic-multi-group

DynamicMultiGroup entity