Make Cached work with DI and on-disk caches

* Update Cached to use DI. To make this work, I change the old Cached
  class into CachedBuilder. Then I introduce a new Cached class which
  has the same API as the old Cached companion object.
* Make Results serializable by wrapping them before storing them
  in Cached's cache. This allows Cached to work with on-disk caches,
  not just in-memory caches.
Fix omnidoc snapshot check to use play version
Move overrides of directory layout defaults to an SBT auto plugin, so that we have the option of turning off the overrides and using the default SBT directory layout
Make JsPath#prune retain the original path on success
Merge pull request #3641 from richdougherty/results-disk-cached

Make Cached work with DI and disk caches
Merge pull request #3666 from gmethvin/jspath-prune

The path returned by JsPath.prune should be the original path
Merge pull request #3687 from pvlugter/omnidoc-snapshot-check

Fix omnidoc snapshot check
WS Java API: setTimeout(Int) -> setRequestTimeout(Long)
Merge pull request #3690 from gmethvin/ws-with-timeout

WS Java API: setTimeout(Int) -> setRequestTimeout(Long)
Upgraded joda-time
Upgrade fluentlenium
Merge pull request #3697 from mkurz/fluentiumUpgrade

Upgrade fluentlenium
Merge pull request #3695 from mkurz/jodaTimeUpgrade

Upgraded joda-time
Merge pull request #3684 from benmccann/standard-layout

Move overrides of directory layout defaults to an SBT auto plugin
The directories which are watched should not be hardcoded
Upgrade to jboss-logging 3.2.0

This is to avoid the LGPL license for jboss-logging 3.1.x which is
brought in by hibernate-validator.  I did a manual audit of the changes
from 3.1.1 to 3.2.0, the only binary incompatible change was the
addition of methods to an interface, but it's not likely that anything
we use or that our users use would be implementing this interface.
Removed ebean from Play core

* Moved to https://github.com/playframework/play-ebean
* Switched play-java-intro to use JPA instead of ebean
* Made JPA docs appear before ebean docs
Merge pull request #3691 from jroper/remove-ebean

Removed ebean from Play core
Added ebean to migration guide
Remove need for DefaultHttpErrorHandler to get context from static methods backed by ThreadLocal.