Start of a big refactor of the reporting code.  This mainly involves the addition of classes that encapsulate the definition and access to metadata, and the addition of definition libraries.  Progress on refactoring the ArtRegister report is currently only partially done, and this report wil not currently work.  The code should compile.