Wrong oauth signature when multiple same param keys exist

According to http://tools.ietf.org/html/rfc5849#section-3.4.1.3.2,
when normalizing parameters to calculate base string for oauth signature,
oauth client should handle multiple pareters with same key name.

For example: (quotes from RFC5849)
when build base string for following request,
```
 POST /request?b5=%3D%253D&a3=a&c%40=&a2=r%20b HTTP/1.1
       Host: example.com
       Content-Type: application/x-www-form-urlencoded
       Authorization: OAuth realm="Example",
                      oauth_consumer_key="9djdj82h48djs9d2",
                      oauth_token="kkk9d7dh3k39sjv7",
                      oauth_signature_method="HMAC-SHA1",
                      oauth_timestamp="137131201",
                      oauth_nonce="7d8f3e4a",
                      oauth_signature="djosJKDKJSD8743243%2Fjdk33klY%3D"

       c2&a3=2+q
```
client should include two 'a3' param keys(in query string and in body) and its values.

Currently request can't do this because it builds a parameter map as object and pass it to oauth-sign.

For your information, http://oauth.googlecode.com/svn/code/javascript/oauth.js builds a parameter map as array of [key, value].