Automatically start things in WithXxx helper classes
Update code to leverage the new way of using WithXxx helper classes
update specs2 2.3.12
Case-insensitive handling of response headers
Improve support of scala types in routes

Now supports:

- Nested type parameters (#2402)
- Tuple types
- Type projection

Types are now parsed according to the following grammar:

    simpleType ::=  stableId (typeArgs)?
                 |  '(' types ')'
    typeArgs   ::=  '[' types ']' (typeArgs)?
                 |  '#' identifier (typeArgs)?
    types      ::=  simpleType (',' simpleType)*
    stableId   ::=  identifier ('.' identifier)*
Refactor some Tree constructions in json macro implementation.
Single json macro implementation instead of three very similar ones
Minor refactoring to json macro implementation
language.reflectiveCalls not needed in json macro implementation
Flatten code structure in js macro

(mostly whitespace changes: view with 'git diff -w' to ignore)
Use a proper intermediate data structure for implicits in JsMacroImpl
make scalariform happy
Merge pull request #2815 from gmethvin/case_insensitive_headers

Case-insensitive handling of response headers
Remove use of NotNull trait
Latest rjs documentation given changed behaviour.
Merge pull request #2853 from harrah/refactor-json-macro

Refactor json macro
Moved HeadAction to play.core.actions

Fixes #2861, ensures that there's no play.api.controllers package to
interfere with controllers imports.
Ensure UTF-8 is used for reading/writing files

Play 2.2 and earlier added -Dfile.encoding=UTF-8 to the build script.
Activator does not, which means we can't use this to enforce UTF-8
everywhere, so now we need to be explicit about UTF-8.

Fixes #2838
Merge pull request #2860 from cchantep/anorm-notnull

Remove use of NotNull trait
Merge pull request #2861 from jroper/move-head-action

Move HeadAction out of play.api.controllers