Add nose to requirements.txt

I think travis ci has this installed by default,
but to run the tests locally nose has to be
installed.
Add sigv4 test suite

AWS provides a test suite for sigv4 that includes sample requests and
the expected signatures.  I've integrated that into the test suite for
botocore.

I had to update the auth module to accomodate some of the sigv4 test
cases, the two big changes being to support multiple headers with the
same key.

There were also tests that include query params with duplicate keys
(e.g. 'foo=bar&foo=baz'), but given that no AWS services support this,
and no SDKs support this, I'm ignoring those tests for the time being.

Also, for python2.x, the HTTP parser didn't support parsing header
values with duplicate keys so those tests are ignored on python2.x.

Verified that all unit tests pass in py26,py27,py32,py33.
Merge pull request #18 from jamesls/nose-requirement

Add nose to requirements.txt
Merge branch 'sigv4-testsuite' of git://github.com/jamesls/botocore into jamesls-sigv4-testsuite
Fixing a bug in JSONEndpoint.  Fixes #23.
Adding a base test for directconnect operations.
A couple of tiny PEP8 fixes.
Account for empty paths in auth url normalization
Update test deps to use unittest2/mock

In order to get some of unittest assertion methods in
python2.6 we have to use the unittest2 module instead.
Pass in auth handler to endpoint class

This makes it possible to create an endpoint
object with a custom auth handler.

Also added unittest for get_endpoint to ensure
I didn't break anything.
Merge branch 'pass-auth-handler' into develop

Closes #24.

* pass-auth-handler:
  Pass in auth handler to endpoint class
  Update test deps to use unittest2/mock