Adding new data types to data loader
New files for data loader tool
adding support for read-only connection
Encapsulate User DB connections

Trying to create class that can produce collections of connections in a
thread-safe manner
Adding labels for data type processing
Replacing list editing button panel

Eliminating bespoke creation of list editing buttons with the class
ListEditingButtonPanel
Fixing ability to select multiple calc methods
First  attempt to support data loading and cleaning

Most of these changes represent the first major effort to work on
middleware in the RIF Data Loader Tool.  In particular, the work
addresses the first two steps of a work flow that includes the following
steps:

(1) Load - load data table
(2) Clean - cleans the data from the load table using regular
expressions or database functions.
(3) Convert - maps parts of a cleaned table to parts of the RIF schema
(eg: map parts of a cleaned table to a numerator table)
(4) Combine - combines one or more files that have data structures
compatible with parts of the RIF schema (eg: combining multiple
numerator tables together, one for each year of data)
(5) Optimise - processes converted or combined tables so they perform
better during RIF operations
(6) Check - includes data quality checks for rows in the optimised table
(7) Publish - where the RIF Manager adjusts accessibility properties.
Published tables will be visible to the wider community of RIF users and
can be copied to provide input to the data source workflow described
above.
Remove types of cleaning rules

Originally we envisioned substitution rules that could become
progressively more complicated.  Now, they have been simplified to a
single class CleaningRule, which emphasises search and replace values.
Renamed message property reader class
Need more specialised names for query formatters used in delete operations

We needed two query formatters: one which handled deleting rows from a
table and another which actually deleted the table itself.  Therefore
"SQLDeleteQueryFormatter" was not specific enough of a name to continue
using.
Modified classes for formatting SQL queries

I've added some new query formatter classes because the RIF Data Loader
Tool needed them and they were generic enough in nature that they might
be useful in other parts of the code base.  As well, query formatters
now have methods that allow query generation to be "pretty printed" with
comments and indentation levels.  The goal of these enhancements was to
enhance the readability of generated SQL code.
Making more reusable abstraction layers

Changes were made to the RIF service classes so that the Data Loader
Tool could make better reuse of the code.
Adding some more debug methods
Removed import statements