Update Travis settings to run nose in verbose mode.
Create separate TSVWriter and CSVWriter subclasses.
Disable broken feature scaling unit tests.

The tests never actually worked properly, but with the additional checks
in place for creating/writing FeatureSets I noticed that the test data
being created had mismatched numbers of IDs and features. Before the
refactor, that would make the file just end up with whichever number was
smaller (since it uses zip internally). Essentially, the IDs and labels
from the training set were being reused with the new randomly generated
features from the test set.  Fixing this issue made it so that
performance was the same with and without scaling turned on, which made
the test fail.

I also removed docstrings from tests that use yield, because the
docstring overrides the name of the test given by nose. Before it was
impossible to tell which run of a generator test was causing a problem,
whereas now `nosetests -v` prints out the arguments to make debugging
simpler.