Basis of module injection
Use application loader to create production applications
Add simple binding dsl
fix compilation with OpenJDK

The links cannot be resolved as the BuildLink project does
not have the dependencies to satisfy them.
Merge remote-tracking branch 'origin/master' into inject
Made dev mode use GuiceApplicationLoader

Guice is now instantiating DefaultApplication itself.
Scaladocs for binding and module
Added modules loading
Added application lifecycle

This required a little refactoring of Application so it can be
stoppable.

Also found that bindings in Guice can have no target (be bound to
themselves), and there can only be one qualify, so that was changed to
an Option.
Added injector abstraction, and added source reporting in binding errors
Added documentation about the SBT assembly plugin
Add support injection in FakeApplication
Change order of path to activator in PATH variable

I had problems with setting the path to activator and/or play when the path came after the content of the PATH variable when using ubuntu. I think it is less error-prone when we add the activator path at the beginning of the PATH variable.
Merge pull request #3181 from jroper/sbt-assembly-docs

Added documentation about the SBT assembly plugin
Ported messages plugin to be a module

In addition, filled out the Java API to provide more than just static
methods.
Ported WS plugin to module

Also added Java versions of a number of the interfaces.
Ensured WatchService watches directory recursively

* Also fixed MatchError on FreeBSD
Merge remote-tracking branch 'origin/master' into inject
Moved environment methods into environment classes
Merge pull request #3187 from jroper/watch-service-recursive

Ensured WatchService watches directory recursively