Add a warning when flashing is used with something other than redirect.
Enumerator.onDoneEnumerating invoked for failures

Typically, Enumerator.onDoneEnumerating is used to clean up resources.
Hence it can be considered the equivalent of a finally block.  However,
it's not implemented that way, it only implements if the iteratee
successfully consumes all its input.

This results in resource leaks, for example, `Enumerator.fromStream` was
using it to close passed in input streams.

Now it's implemented such that whether the iteratee successfully
consumes the input, or fails, the callback will be executed.

Fixes #1912
Fix for 992.

Move WS into its own Scala and Play modules and add documentation.
Fix specs to include tests, rename play-ws-java to play-java-ws.
Add tests to verify that the WSPlugin loads correctly.
Documenting Messages' apostrophe handling, adding messages.path configuration option.

This is a squashed commit. For people looking back with git-blame, here's
justification for my actions.

----------------------------------------------------------------------------
Documentation clarification

"can be" suggests that MessageFormat is optional, but the example doesn't
show any way to override this.

If this is incorrect, a more complte example should be added beside the
basic usage example.

----------------------------------------------------------------------------

Clarifying missing apostrophes for the uninitiated

Not having a Java background, I had never encountered java.text.MessageFormat,
and had no idea why my apostrophes were disappearing.

----------------------------------------------------------------------------

Adding messages.path configuration option

When loading a messages file, prepend messages.path before attempting to
find the resource.
Add commons-codec
Unwrap ExecutionException in handleError (e.g. to enable AssertionError to be displayed)
Display exception text as preformatted text

So that the error marker (^) points to the correct position. Also make the font size smaller to reduce wrapping/clipping caused by very long Type name (e.g. mapping type).
Make scalariform happy
Remove spurious WS import.
[#1938] Return 400 on bad URI
[#1942] Call Enumerator.fromCallback1 onError parameter
[doc] Add a line about test:console to ScalaTest.md
Make exception text a bit larger, add overflow: auto
Merge pull request #1945 from char101/patch-2

Display exception text as preformatted text
Merge pull request #1951 from wsargent/patch-2

[doc] Add a line about test:console to ScalaTest.md
Merge pull request #1950 from baloo/improvements/1938-Invalid-URI-return-400

[#1938] Return 400 on bad URI
Merge pull request #1886 from blast-hardcheese/master

i18n documentation clarification wrt apostrophes
Merge pull request #1912 from jroper/1912-enumerator-resource-leak

too many files open bug
[#1942] Call onError on future failure
Merge pull request #1944 from char101/patch-1

Unwrap ExecutionException in handleError (e.g. to enable AssertionError to be displayed)