Migrate from FEST 2 to AssertJ, fixes #493

In the future assertj-joda-time (http://joel-costigliola.github.io/assertj/assertj-joda-time.html) and
assertj-guava (http://joel-costigliola.github.io/assertj/assertj-guava.html) might also come in handy
for writing more concise tests for Dropwizard (which is using both, JodaTime and Google Guava).
Move AssertJ version into Maven property
Merge pull request #504 from joschi/issue-493-assertj

Migrate from FEST 2 to AssertJ
Upgrade to Jersey2
update docs for new provider to register for @Auth and add new convenience method to CachingAuthenticator to match the docs
use an ApplicationEventListener to log all components at startup, instead of requiring ServerCommand to call DropwizardResourceConfig.logComponents() explicitly
add back support for conditional GZip encoding of entities being sent in dropwizard-client, which was taken out before
rename test classes to match new names of classes they test
Support for @QueryParam Optional<T>
Registering provider for optional query param in DropwizardResourceConfig.
remove unused imports
Changing the resource creation from InstrospectionModeller reflection to Resource.from().
add server side container filter that negotiates based on the header Accept-Encoding sent by the client and supports the gzip encoding
use the Jersey 2.x equivalent multivalued map
use the new maven coordinates for metrics
use the equivalent Jersey2.x classes
migrate to Jerey 2.9, and latest version of Metrics library which now has support for Jersey 2
fix compilation and testing failures after rebasing to latest master, also remove custom JerseyServletTest as Jersey2.9 now has full support for servlet based testing in JerseyTest
get rid of unnecessary use of ByteArrayInputSream, JAX-RS client can read entity under the covers given the right class, also fix Mustache unit test
revert back to test logging being disabled