Implemented non-blocking run mode

* Used this to implement a dev-mode scripted test.
* Reproduced #2905, assertions commented out to prevent failing.
Only reload on non assets changes

Fixes #2905

This is a major refactoring of PlayReloader.

* Pulled out all logic to do with watching, jnotify etc into a
  PlayWatchService
* Rewrote change detection/reload logic
* Added some more scripted tests to test things like reload failures
Assets controller fixes

* Replace usages of Play.current with Play.maybeApplication. This
  ensures that at very least templates using assets reverse routes can
  be rendered without a running application.
* Used Option instead of exceptions to handle NotFound
* Fixed resource leak in digest cache
* Use Global bad request handling
* Let Play handle errors
Don't overwrite explicit Content-Type in FakeRequest
Make body type argument of WrappedRequest covariant to match Request
[DOC] Fix jpa config example
Merge pull request #3125 from cedricziel/jpaDocFix

[DOC] Fix jpa config example
Document form mappings for other date types
Merge pull request #3126 from richdougherty/date-docs

Document form mappings for other date types
modify version number

0.1.3 --> 0.1.4
Merge pull request #3128 from diceit/ide-ensime-014

modify version number for ensime in doc
Merge pull request #3122 from jroper/assets-no-play-current

Don't use Play.current anywhere in Assets
Test for HTTP calls
Use maybeApplication in CSRF and Crypto
Add missing lang attributes for improved accessibility (see http://www.w3.org/TR/UNDERSTANDING-WCAG20/meaning-doc-lang-id.html and http://www.w3.org/TR/WCAG20-TECHS/H57.html).
Merge pull request #3139 from danielnixon/master

Add missing lang attributes for improved accessibility
Update acolyte dependency
fix javadoc indent
Merge pull request #3142 from gmethvin/json

fix javadoc indent
Simplify json response example and add an example of serializing a Java object