Solr
Add comment describing Solr install
Changed entity name to SolrServer and updated basic configuration
Initial revision of SolrServer entity
Fix broken XML in Solr config file
Updated Solr configuration and test client for tests
Copied jars from distribution to lib dir
Removed unused JMX interfaces
Added Solr contrib libraries
Add unit test EntityConfigResourceTest
BrooklynNode: classpath config updates

getClasspath() method reads from brooklyn.properties if classpath is not configured on the entity.

Relies on TypeCoercion's conversion from comma-separated String to List<String> to support List<String> natively in code while still allowing an entry in brooklyn.properties to work.

Adds integration tests for classpath configuration.
AMP compatibility workaround

The brooklyn dist.tar.gz puts everything in a subdirectory called "brooklyn-VERSION". The AMP dist.tar.gz doesn't. This workaround checks for a "brooklyn-VERSION" directory; if it doesn't exist, it makes it a symlink to ".". This means that "brooklyn-VERSION/bin/brooklyn" will work for both brooklyn and AMP.
Adds StringPredicates.isBlank
Fix MutableList.copyOf(Iterable) to accept nulls
Adds Entity.addPolicy(PolicySpec) and addEnricher(EnricherSpec)
Adds entity CHILD_ADDED/CHILD_REMOVED sensors
Adds AbstractEntityAdjunct.getRequiredConfig/emit
Deprecate old enrichers (prefer new builder)
Adds Enrichers.builder()
Refactor to use Enrichers.builder()