Extracted HttpErrorHandler interface from Global

* Play will by default try and load one of these from the root package called ErrorHandler
* If none is found, it will fallback to one that delegates to Global, so that Global.onError etc methods still work for legacy apps
* Added a new mechanism to the Reflect utils to load bindings for either a Scala interface, or a Java interface with an adapter to the Scala interface
* Updated documentation, including removing documentation on old Global methods
I don't know, but I was getting lots of OOMEs from javac until I added this config.