Abstracted all reporting elements into the HibachiReport object, and
provided API for defining reports.