INT-2620 Fix Race Condition in Failover Tests

Sporadic test failures (fairly consistently on Mac).

Problem was some tests sent a message to a client socket before the
close notification had been received.

Wait for client connection to close rather than waiting for the
server to stop.

Also, with NIO, close the channel on accept exception.

Also improve debugging by including a log of new connections
including the id.
Merge pull request #793 from garyrussell/INT-2620

* garyrussell-INT-2620:
  INT-2620 Fix Race Condition in Failover Tests
INT-2991 Filtered Messages Marked SEEN

Missing else clause caused filtered email messages to
still be marked as SEEN. Also marked un-filtered messages
twice if a filter was present.

Add else; add tests.
Merge pull request #784 from garyrussell/INT-2991

* garyrussell-INT-2991:
  INT-2991 Filtered Messages Marked SEEN
INT-2831: Add Jackson 2 support

Add Jackson 2 support while retaining backward compatibility as much as possible.

Introduce a new abstraction for JSON conversion.

JIRA: https://jira.springsource.org/browse/INT-2831

INT-2831: Polishing

* remove `JsonObjectMapperFactoryBean`
* add @Deprecated constructors to `ObjectToJsonTransformer` and `JsonToObjectTransformer`

Polishing

Docs, compiler warnings.
Merge pull request #774 from artembilan/INT-2831

* INT-2831:
  INT-2831: Add Jackson 2 support
INT-2455: Support HTTP Outbound 'encode-uri' Flag

The `<http:outbound-channel-adapter>` and `<http:outbound-gateway>` now provide
an `encode-uri` option that controls whether the request uri is encoded
(default `true`).

It can be useful in some scenarios with a non standard URL, e.g. RabbitMQ REST API:
'http://foo.RabbitMQ.com/api/queues/%2f/bar.queue' where we must not
encode the '%'.

https://jira.springsource.org/browse/INT-2455

INT-2455: Polishing based on PR comments

INT-2455: 'encode-uri' in the Reference Manual
Merge pull request #755 from artembilan/INT-2455

* INT-2455:
  INT-2455: Support HTTP Outbound 'encode-uri' Flag