Logging and reporting

Ideally output between different types of testing system should be as uniform as possible, as well as making it easy to make things more or less verbose. We created some libraries to make doing this easy.