Changed RIFJobSubmissionAPI references

Changed references from RIFJobSubmissionAPI to RIFStudySubmissionAPI.
Describes a result table

Introducing new class that describes a result table.  This concept is
used to help filter column attributes that are associated with a
specific result table.
Removed references to XML annotations

Removing import statements to various classes used to bind XML fields to
Java objects.  We are now instead using parallel classes, where each
major business class is associated with a class whose main job is to
support serialisation with JSON
Reworking service classes

Previously, the RIF relied on RIFJobSubmissionAPI, which ended up
growing to almost 50 methods as it began to include various methods that
were used for retrieving results.  The burden of implementing all API
methods fell to ProductionRIFJobSubmissionService, which began to become
too large to maintain.  As well, we had to consider protected methods
that could be overridden for testing purposes.  We now have the concept
of a "RIF study service bundle", which manages a collection of simpler
services, as well as tasks for logging in and out.  Code for the service
bundle is expressed by an AbstractRIFStudyServiceBundle class, and final
classes that are appropriate for production and testing environments.
The service bundle manages two services: one for study submission
(RIFStudySubmissionAPI) and another for retrieving study results
(RIFStudyResultRetrievalAPI).  Like the service bundle concept, these
services are supported by AbstractXXX, TestXXX and ProductionXXX service
classes which ensure that testing methods don't end up in production
code.
Contains common service methods

This class contains API methods which would be common to both study
submission and study retrieval tasks.
Modifying test classes for new services

When the code for supporting RIF services was redistributed to more
classes (see AbstractRIFStudyServiceBundle, TestRIFStudyServiceBundle,
ProductionRIFStudyServiceBundle, and AbstractXXX, TestXXX and
ProductionXXX classes for StudySubmission and StudyRetrieval) -- the
test cases had to be modified so they could call the new services
properly.
Reducing number of error codes

The RIF makes use of an application-level exception to support two
goals: (1) to provide intelligent, plain English error messages to
clients in a way that hides potentially sensitive data produced by the
database and (2) to provide an error code that makes it easy to test
exception cases in automated test suites.  Therefore, each
RIFServiceException has one or more error messages meant for people and
a RIFServiceError that is meant to help with comparing accepted and
actual error code return values in automated test suites.

Over the course of development, the number of different error codes has
grown significantly, and many of them describe the same category of
error: a query that fails to be executed by the database.  It has been
decided that while specific error messages are still useful to help
inform users of client applications, for the purposes of testing we only
need one kind of error code in RIFServiceError to report failings in the
database: the code "DATABASE_QUERY_FAILED"

I went through the manager classes and ensured that only this code was
used if a try-catch block caught an SQLException.
New class to manage service resources

This class is meant to help provide a centralised data container object
for initialising and providing references to the various manager classes
that are used by the rif services.  For example, the class initialises
and can return the instance of SQLCovariateManager to whatever service
class needs them.
deprecating ProductionRIFJobSubmissionService

Previously, ProductionRIFJobSubmissionService was the class which
implemented all of the API methods for all RIF tasks.  The code for this
class has now been redistributed into simpler service classes (see
AbstractRIFStudySubmissionService, AbstractRIFStudyRetrievalService).
Removed annoying non-Javadoc comment
Removed as part of rework on service classes
Modified web service to depend on new services

Modified the web service resource so that it uses the new way that
services have been designed.
Added error messages for GeoLevelAttributeSource

Added a new error message for reporting when the results manager class
cannot get the list of geo level sources for a given study.
Moving classes from service to dataStorageLayer

Moving classes currently in the "rifServices" package to
"rifServices.dataStorageLayer", in order to reduce dependencies in the
service classes and to allow me to reduce visibility of manager classes
to be only available to other classes in the same package.
Encouraging policy of min visibility

Many classes have had the "public" modifier removed from the class
definition, so they are not visible outside the scope of their package.
This has been done throughout the rifServices and rifJobSubmissionTool
projects.  The change increases security and simplifies the collection
of classes that users of the code need care about.
Moved XMLHealthCodeTaxonomyContentHandler...

Moved this class so that it may have a more restricted visibility.
Excluding target files