Add support for Python 3.

Make travis run py3 tests too.
Add dependency on 'six'.
Python 3: Add support for results file object to be in binary mode.

When the results are large, they are downloaded directly from s3 using
boto. Boto expects the file object to be open in binary mode.

This was the error, I was getting when I sent a text mode file object to boto:

    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
      File "/home/ec2-user/qds-sdk-py/qds_sdk/commands.py", line 168, in get_results
        _download_to_local(boto_conn, s3_path, fp, num_result_dir, delim=delim)
      File "/home/ec2-user/qds-sdk-py/qds_sdk/commands.py", line 869, in _download_to_local
        key_instance.get_contents_to_file(fp)  # cb=_callback
      File "/home/ec2-user/venv3/lib/python3.4/site-packages/boto-2.33.0-py3.4.egg/boto/s3/key.py", line 1645, in get_contents_to_file
        response_headers=response_headers)
      File "/home/ec2-user/venv3/lib/python3.4/site-packages/boto-2.33.0-py3.4.egg/boto/s3/key.py", line 1477, in get_file
        query_args=None)
      File "/home/ec2-user/venv3/lib/python3.4/site-packages/boto-2.33.0-py3.4.egg/boto/s3/key.py", line 1531, in _get_file_internal
        fp.write(bytes)
    TypeError: must be str, not bytes
Ignore python3 virtualenv.
The API accepts 'archives' and not 'archive'.

This change will break stuff for people who were using the --archive
option. But I think that's okay because it was already broken - only
earlier they didn't know about it (because the API just ignores bad
parameters.)
Merge pull request #66 from mindprince/py3

Add support for Python 3.