2 singletones introduced to replace report's static variables and
command line settings. still need work. tests aren't completely
pass