support for multiple parameter values

changes:
- disallow null for parameter values (Play JSON deserializer will enforce this behavior, unlike json4s).
- collapse sending multiple cookies in a single header (RFC 6265)
- send multiple parameter values to the backend
  - query : `a=1&a=2`
  - cookie : `a=1; a=2`
  - header : duplicates, `a: 1` and `a: 2`
  - path, body : not supported
  - warts :
    - Order is kept when sending to the backend, but does not influence the cache key
    - Parameter versioning only consider the first value
- Normal parameters do not override meta parameters anymore (they cannot, nor should they ever)
- Java client : use a Seq.builder instead of a var.

fixes #20 
I am all for better performance. I am not convinced that the move you suggest will improve it by a big enough margin.

It is currently possible (although hard) to DoS Octoparts with very big requests, but the way to do it is to include many parts, not many params. This is why we do not recommend exposing it to the Interwebs.

I would recommend we keep Swagger working for now. Or get someone with a lot of free time like @cb372 to maintain a fork of Swagger :wink: