Code style fixes

Imports, spacing, warnings, typo, comments, license headers
Remove unused method parameter
Configurability for REST timeout length
Documentation and comments

Standardizing style: JavaDoc/GroovyDoc tag values start with lowercase
letters (except initialisms) and do not end in periods. They are
generally sentence fragments, not sentences.

How to upgrade to httpclient 4.2.* after AWS Java SDK upgrades.
Delete unused code path
Refactor health check methods to RestClientService
Use configurable timeouts
Choose best single Eureka node

Delay App Instance cache until Eureka server names are cached
Prevent wasteful, concurrent cache fills

There is no benefit to filling a cache with two threads at the same time.
There is also no point in queuing up cache fill events one after another.
However, a thread that wants a cache to be recently filled before doing
other actions should wait for the current fill process to complete.

Instead, choreograph a deterministic dance between threads waiting for
each other to set appropriate state. This requires a hook to enable
multithreaded unit tests.

Also, referencing the private variable "journal" from within an inline
anonymous closure does not work correctly when this method is called
on a subclass of CachedMap, such as the MultithreadedTestingCachedMap
subclass. The simplest solution is to use ordinary for loops instead of
"each". This can also reduce Groovy's permgen usage because the
unnecessary closures do not need wrapper classes.
Retry Eureka calls, fill address cache on failure

After each failed Eureka call, refresh the DNS cache of Eureka nodes
and wait a little longer before the subsequent call, up to three times.
Fix home page Eureka links to use Eureka CName
EurekaService unit tests
Use limited conventional retries as well

Even though they don't help with a lot of the common Eureka failure cases.
No harm in adding these, however. They could occasionally handle errors
more simply.
ASGARD-1145 - Turn off instance types html parsing warning email

Because otherwise it's going to drive me insane.
Merge pull request #299 from joesondow/ASGARD-1145-stop-instance-types-email

ASGARD-1145 - Turn off instance types html parsing warning email
ASGARD-1124 - Single EBS volume for m3 instances

Change Asgard's m3.* launch behavior to add one block device mapping
/dev/sdb instead of the current four block device mappings.
Merge pull request #300 from joesondow/ASGARD-1124-single-EBS-volume-for-m3-instances

ASGARD-1124 - Single EBS volume for m3 instances
ASGARD-775 - 404 for non-existent DBSnapshot

Request for non-existent DB snapshot should show friendly 404 page and
update cache
Merge pull request #301 from joesondow/ASGARD-775-non-existent-DBsnapshot

ASGARD-775 - 404 for non-existent DBSnapshot
ASGARD-1142 - Use strict health check

For protection against unwise traffic moving