Moves test directory to tests.
Get version string to from _version.py.
Adds .gitignore.
Major refactorings for Python 3 compatibility.

Uses distutils 2to3 automatic conversion during installation for Python 3.

Adds tox.ini file for testing multiple Python versions using tox.

Begins adding tests for convutils.convutils.

Changes ExcelTabNewlineDialect to SimpleTsvDialect.

Adds make_simple_tsv_reader to take the place of the previous
make_csv_reader, which now defaults to csv.excel dialect if none can be
detected. This makes use of SimpleTsvDialect explicit for
make_simple_tsv_reader.

Adds make_simple_tsv_dict_writer to take the place of the previous
make_csv_dict_writer, which now defaults to the csv.excel dialect if
none is given. This makes use of SimpleTsvDialect explicit for
make_simple_tsv_dict_writer.
Refactors split_file_by_num_lines and adds tests.

Changes the signature of ``split_file_by_num_lines``. The function now
accepts a filehandle instead of a file name. The ``has_header``
parameter has been renamed ``header``. Adds two new parameters,
``pad_file_names`` and ``num_lines_total``. If ``pad_file_names`` is
``True``, the numerical portion of the output file names will be
zero-padded. If ``num_lines_total`` is provided in addition to
``pad_file_names``, ``split_file_by_num_lines`` will skip counting the
number of lines in the file, itself, which can save time.

Introduces the dependency of mock for unit tests for Python versions
earlier than 3.3.
Refactors and adds tests for split_file_by_parts.

This includes changing the signature to match split_file_by_lines.

Refactors testing code for split_file_by_lines to reduce code
redundancy.

Also changes assert_has_calls to assertEqual, because assert_has_calls
actually passes if the expected calls are a subset of the actual calls,
wheras I wanted to test that the actual calls were exactly as expected,
including the number of calls. Interesting gotcha.
Adds tests for column_args_to_indices.
Refactors and adds tests for cumsum.
Adds tests for sample_list_dict and sample_list_dict_low_mem.
Moves sample_list_dict and sample_list_dict_low_mem to convstructs.

This is a better location for these two functions, since they correspond
more to a particular type of data structure.
Refactors and adds tests for SortedTupleKeysDict.

Using the recommendation from StackOverflow (see
http://stackoverflow.com/questions/3387691/python-how-to-perfectly-override-a-dict)
I've changed the implementation of SortedTupleKeysDict to use
collections.MutableMapping instead of dict as its parent class.
Refactors TwoWaySetDict to subclass MutableMapping.
Rename make_csv_reader headers parameter to header.
Renames convutils to utils, convstructs to structs.

This serves two purposes:

1. It resolves any confusion between the package convutils and the
   module convutils.
2. It distinguishes a v2.0 installation from earlier releases, as a side
   effect.

Updates documentation.
Adds .travis.yml file for Travis-CI.
Updates copyright on license.
Adds Sphinx project documentation.
Corrects nosetests to nose.
Attempts to get Travis to use 2to3.
Another attempt to get Travis to use 2to3.