Better defaults for Server.

* Use the intstrumented thread pool to give visibility of Jetty thread
  usage.
* Disable sending of Date and Server headers.
* Allow the server some grace period when shutting down to give requests
  a chance to complete cleanly.
Minor tweaks to external handler defaults.

* Use the X-Forwarded-For header for the remote address.
* Reuse sockets
Wrap external handler with instrumentation.

Use the InstrumentedHandler wrapper to get more metrics for the external
handler.
Enable GZip of responses.

If a client asks for it, attempt to compress responses for common text
only filetypes. No User-Agents are excluded as all of them should
support gzip correctly.
On error, attempt to stop the server.

Stop the server as best we can on error and allow the error to bubble up
to the main method so it choose what to do.
Merge pull request #10 from deverton/better-server-defaults

Nicer defaults for server, connector, and handlers
Merge pull request #1 from aharwood/master

Merge latest changes from original repo into fork.
Moved X-Forwarded-For and ReuseSockets settings for ExternalConnectors into defaultValues. Added tests.
Merge pull request #11 from caps/master

Moved X-Forwarded-For and Socket Reuse settings into default values and added tests.
Bumped version for release
Add extra Javascript MIME type.

Seems Grails still generats x-javascript somewhere so we should compress
that as well.
Merge pull request #12 from deverton/add-extra-mimetype

Add extra Javascript MIME type.
Bumped for release
Dropped thread pool size to 128
Bumped for release
Made minimum and maximum http thread pool size configurable
Bumped for release
Fixed documentation bug