Make uploading coverage data to coveralls a separate step

We really only want to report coverage when the tests fail.  Also, this
allows npm test to report coverage on the command line :).