Add coverage to tests


 * Add coverage to tests
 * Coverage is reported on the command line after a successful build
 * Coverage also sent to Coveralls, where you get a report like this: https://coveralls.io/builds/814939
 * Update `.gitignore` using GitHub boilerplates (to ignore the temporary `.coverage` file, but the other standard stuff can be useful too)
 * Report pep8 and pyflakes stuff at the end of a successful build. Pep8 isn't so important as it's just style, but pyflakes can report genuine programming errors and bugs.

Coverage is currently 51%, but that only includes two tested files: `bill_info` and `utils`.

Adding more tests, and knowing their coverage, can be a great help with Python 2 and 3 compatibility.

Coveralls is free for open-source projects. 

TODO:

* [ ] Someone with rights should add the repo at https://coveralls.io/repos/new