Rework the AttachmentFactory and Attachments.  Make the Attachment
implementations stand on their own and be able to determine the location
of their bytes without needing a reference back to the
AttachmentFactory.  This required changing the loading semantics so the
OpenRocketDocument is created prior to beginning to read the xml file. 
Added an OpenRocketDocumentFactory to facilitate construction of
OpenRocketDocument objects.
Rework attachment loading.  Construct a DocumentLoadingContext in
GenericLoader and pass into both OpenRocketLoader and RocksimLoader. 
the DocumentLoadingContext contains the OpenRocketDocument, MotorFinder,
and AttachmentFactory.
Merge remote-tracking branch 'plaa/kruland-integration' into kruland-integration-defaults
Add compareTo to ResourceDecalImage after merge with k-integration