Validation

Ended up porting most of this code to it's own extension: https://github.com/ngds/ckanext-metadata, so this merge is really just to make sure I didn't miss anything...I think there might be some big CSS changes, but that's about it.

In ckanext-metadata:
-custom package/contribute form (collect multiple agents, support our own json schema instead of wonky ckan schema)
-custom 'additional details' for packages and resources
-automated support for usgin content models
-content model validation