Adds example with "open loop" policy

- Adds WebClusterDatabaseOpenLoopExample, which sends an SMS message
  when the max-pool-size cap is reached. This notification to the
  operator allows someone to manually reconfigure the AutoScaler policy
  to increase the max-pool-size, if desired.
Adds EntityDriver.getEntity()
Supports customising installer downloads

- Adds DownloadsRegistry (a set of "resolvers" for figuring out
  the download URL, given an EntityDriver)
- Adds Attributes.DOWNLOAD_URL for the default download pattern
  of a given entity (where ${version} etc will get substituted)
Customise installer downloads through brooklyn.properties
DownloadsRegistry.resolve() returns List<String>

- Instead of returning a single string, return a list of URLs to
  try in-order
CommonCommands.downloadUrlAs improvements

- Cleans up CommonCommands.downloadUrlAs to support passiong in
  multiple URLs (to try each until one works), and for use in more
  simple download scenarios
- Adds tests
Move EntityLocal from core to api project

- Requires removing EntityLocal.setAttribute(AttributeSensorAndConfigKey)
  because AttributeSensorAndConfigKey is a class in core
- EntityLocal is still in the package brooklyn.entity.basic so it
  shouldn't impact anyone's code (but it is ugly for the api project!)
- Also moves brooklyn.entity.trait.Configurable from core to api
Downloads registry: add javadoc
DownloadRegistry returns DownloadTargets

- Instead of just a list of strings, the DownloadTargets
  explicitly gives the "primary" and "fallback" URLs.
  This makes resolvers more composable.
Default DownloadRegistry to include local-repo
big DownloadsRegistry changes for returning DownloadResolver

- Returns DownloadResolver, instead of just List<String>
- Adds downloads.cloudsoftcorp.com repo to default downloads list
Move downloads code to brooklyn.entity.driver.downloads

- was previously in brooklyn.entity.driver package
Use DownloadsRegistry in entity drivers

- And defines default DOWNLOAD_URL and DOWNLOAD_ADDON_URLS on each entity
Rename Download*Resolver to DownloadProducerFor*

- For DownloadPropertiesResolver, DownloadLocalRepoProducer, etc
- Merges Templater and DownloadSubstituters
minor tweak to jclouds
Merge pull request #531 from aledsage/feature/Download-configuration-support

Feature: download configuration support
Merge pull request #515 from aledsage/feature/Example-OpenLoopPolicy

example open loop policy
Merge branch 'master' into fix/locations-typed-keys-and-jclouds-much-nicer

Conflicts:
	core/src/main/java/brooklyn/entity/trait/Configurable.java -- added javadoc, while in master was moved to api package; easily merged