support new-style ID's for softlayer when detection geography
move LocalhostMachineProvisioningLocationTest from groovy to java
update LocalhostMachineProvisioningLocationTest to use location specs
mutable map accepts null in builder
toString for config bag, for debugging, and convenience for setting string keys fluently
location geography resolution now looks at settings on parent nodes,
so e.g. machines in AWS or Softlayer report the coordinates of that provider's setting if set,
in preference to (and skipping) maxmind resolution;
also extend type coercions to include BigInt to int and similar, with tests, to simplify HostGeoInfo resolution code
ensure flags e.g. timeout are passed and respected, and used in a few more places where tests were taking a lon gtime
clear static data in the localhost-provisioner so that mock lat and long are picked up;
and don't set geo info for ssh machines on configure (because now the parent isn't set so this won't have all the right info!)
have jmx mode default to both jmxmp and rmi everywhere (was just at localhost), allowing standard jconsole and monitoring tools access even on remote machines, unless SECURE is specified of course
refactor AbstractGeoDnsService to use a subscription, with some tests (more coming), and extend AbstractMembershipTrackingPolicy to allow a single point of overriding
AbstractGeoDnsService now prefers HostGeoInfo defined on the entity/location (including inherited) rather than inferred from hostname/IP,
and is more aggressive about picking public IP info when available
introduce and try a LocalManagementContextForTests which does not use any catalog or local filesystem settings;
if this works well, we should port all the tests across.
set the address for AbstractGeoDnsService, in case we are taking HostGeoInfo from a parent/cloud location