Replaces Curate GenericWork with CaseGenericWork

What's happening in this commit:
* Replaces Curate GenericWork with CaseGenericWork.
* Adds support for datastream attachments on works.

There are a lot of changes here.  Definitely could benefit from a review.

Also brings up the question of whether we want to have separate Work model definitions for each type of work (Text, Image, etc.) or make a single CaseGenericWork type that changes its display & indexing based on what's in the object.  The "Curate" way would be to create separate Work models.

@jcoyne opinions?