AsyncAppender now flushes log events when the application shuts down

* async appender workers are no longer daemon threads so they can flush
  partially buffered events to their delegates before stopping
* SLF4J request log stops the appenders when it's closed
* configured command stops the appenders when the execution finishes
* configured commands that execute asynchronously (e.g. ServerCommand)
  must now call cleanup when they finish execution
Merge pull request #414 from vadims/async_appender

AsyncAppender now flushes log events when the application shuts down
Add AbstractServerFactory#shutdownGracePeriod

We seemed to lose this option in the refactoring of 0.7. Jetty has
changed the way that shutdown is handled to better support multiple
lifecycles, but this still makes sense.
Upgraded to Guava 16.0.
Upgraded to Jackson 2.3.1.
Upgraded to argparse4j 0.4.3.
Upgraded to Liquibase 3.1.1.
Upgraded to JSR305 Annotations for Findbugs 2.0.3.
Upgraded to Jackson 2.3.1.
Upgraded to Logback 1.1.0.
Upgraded to H2 database 1.3.175.
Upgraded to Apache HttpClient 4.3.2.
Upgraded to tomcat-jdbc 7.0.50.
Upgraded to Hibernate 4.3.1.Final.