Implement automated code coverage reporting

- Collect unit test coverage using the Istanbul module.
- Update the CI scripts to report this data to the Coveralls service so
  it can be automatically incorporated into pull requests.
- Remove legacy code coverage file and dependency.
Use Shields.io SVG badge for coverage report

Closes #2041