Lots of changes to user defined types and custom artifact derivers. 
Users can now contribute their own derivers that will kick in when user
certain user defined artifacts are added to the repo.  This alows users
to create logical user-defined artifact models, complete with derive
content.
Merge pull request #137 from EricWittmann/sramp-134-derivers

(sramp-134) Support for user defined derivers (for user defined types)