2014.12.20 MSS Code Factory 2.0.12718 CFCore 2.1 model enhanced, major code refactoring

The internal relationships used for the GEL runtime have been restructured to
use independent relationship key attributes instead of sharing the TenantId and
CartridgeId of the object.  With the latter, some of the attributes were non-null
so the ORM code would try to resolve the null relationship against the database,
finding no matching lookup.  (I really should check for that and throw an exception.)

The code for CFCore 2.1 now uses the new List interface, which replaces the old SortedMap
interfaces for returned result sets when reading objects by duplicate index.  The lists
are sorted in natural order by ascending primary key, but the SortedMap implementations
Java provides were proving too heavy for a general purpose interface.  As it is, I really
shouldn't bother with sorting the result sets at all, but I do hate a disorderly data world.
I like some predictability and the option of making a few assumptions about the data I see --
like that it's unique within a data set.

The changes for the general purpose Java code have been written, but are completely untested.
I'll be working through getting CFDbTest 2.1 into a clean-building state before issuing the
next refresh of MSS Code Factory 2.0, which will incorporate the fixes for the general purpose
Java ORM interface.  At that point, I'll be ready to manufacture the code for the affected
layers of all the 2.1 projects and distribute the refresh.