Optimize templates. fixes #2033.

Use a single StringBuilder for building template output (as opposed to many string builders appending each other up the tree).
Don't create collections for single items in template source.
Change Appendable's definition to support single StringBuilder.
Intellij friendly error message
Ignore resource directories when trying to loadMessages in MessagesPlugin, otherwise app don't start if there's a matching directory
remove unnecessary exec ctx prep from Iteratee.flatMap

commit 2b276d24 implemented the lines:
```
case Step.Done(a, Input.Empty) => executeIteratee(f(a))(ec /* still on same thread; let executeIteratee do preparation */ )
case Step.Done(a, e) => executeIteratee(f(a))(ec.prepare /* still on same thread; let executeIteratee do preparation */ ).pureFlatFold {
```
However, the `ec.prepare` is incongruous with the adjacent comment, and the preparation is definitely not required as the preparation is indeed handled by `executeIteratee`.
Fix for Java Message Arguments handling

There was a bug in the handling of message arguments when used in Java.

I discovered it when using `@Constraints` annotation on my model objects and returning the validation errors as Json. This simple example illustrate the bug :

     //in my model object
     @Constraints.MinLength(2)
     public String myField;

     //in my controller (Json version)
     return badRequest(form.errorsAsJson()); //"Minimum length is [2]"
     //in my controller (form render)
     return badRequest(formView.render(form)); //"Minimum length is 2"

 By digging into the code I found out that we were passing directly a List to `Messages.get()`, which in turns rewrap it into another `List` to then call the API. The bug is in fact wider than I first thought and the use case I described must not be the only one where we get this kind of error.

 The patch is simple, it checks if there is only one argument and if it is a `List`, in this case it returns the `List` as is, otherwise the previous behavior is kept (wrapping with `Arrays.asList`).
 Tests were added in MessagesSpec to validate the behavior in Java, and a MessagesTest class was added to check the behavior of the arguments transformation.

 CLA has been signed.
Fix typo
Updated IntelliJ setup with missing step

Clarified steps to setup IntelliJ by adding in missing step.
Add missing import to docs
Add play.plugins file with comments to integrationtest
Merge pull request #2268 from matthew-lucidchart/pullrequest-template-optimizations

Optimize templates. fixes #2033.
Scaladoc and specs for SQL statement parser
Improve wording

As suggested by Byron Becker at
https://groups.google.com/d/msg/play-framework/yzwBa2afFcs/9r8UoUwjP-QJ
Merge pull request #2264 from gmethvin/plugins_comments

Add play.plugins file with comments to integrationtest
Merge pull request #2266 from CedricGatay/fix/java_msg_args_list

Fix for Java Message Arguments handling
Merge pull request #2267 from fernandoacorreia/fix-typo

Fix typo
Merge pull request #2272 from philwills/json-transformer-doc-tweak

Add missing import to docs
'optional' mapping description has been  appended

appended 'optional' mapping constraints description
Upgrade Akka to 2.3.0-RC1

- Upgrade Akka to 2.3.0-RC1
- [Add parens to `sender` reference as recommended]
  (http://doc.akka.io/docs/akka/2.3.0-RC1/project/migration-guide-2.2.x-2.3.x.html#Parens_Added_to_sender)
Fix removed or deprecated Akka Java API
Merge pull request #2271 from georgiknox/patch-1

Updated IntelliJ setup with missing step