Make FormUrlEncoded Data Preserve Parameter Order. Fixes #1814
* Write play.utils.OrderPreserving.groupBy to abstractly do groupBy while preserving order
* Created a separate module because there might be a need for other OrderPreserving things later.
* Utilize OrderPreserving.groupBy in FormUrlEncodedParser.scala so that it can return ListMap instead of Map
* Adjust ContentTypes, Fakes, and JavaParsers to use ListMap instead of Map for FormUrlEncoded bodies
* Write new test case for validating FormFieldOrder being received corretly out of the pipeline
* Extend test case for FormUrlEncodedParser to ensure it maintains parameter order.
Resolve scaliform issues and delete some dead code.

Merge branch 'master' of github.com:reid-spencer/playframework

Conflicts:
	framework/src/play/src/main/scala/play/api/mvc/ContentTypes.scala
	framework/src/play/src/main/scala/play/core/parsers/FormUrlEncodedParser.scala
	framework/src/play/src/main/scala/play/utils/OrderPreserving.scala