Add initial reporting support.
Tidy up reporting