Implement generic relation

This PR does the following:

 - Breaks up djangae/fields.py so it's more maintainable
 - Adds a GenericRelationField which stores an obfuscated db_table + pk for generic foreign key behaviour
 - Adds the JSONField from django-extensions as a better replacement for djangoappengine's DictField (which is stored as a pickled blob). This kind of field is almost essential for denormalization on the datastore.