Add a GenericForeignKeyField

This is a WIP first pass at adding a GenericForeignKeyField. Currently just the dehydrate method is implemented, but it works!

Feedback appreciated.

Here's what the implementation of a Resource using this field looks like:
```
class ItemResource(ModelResource):
    class Meta(ModelResource.Meta):
        model = Item

    class Fields:
        content_object = GenericForeignKeyField(
            attribute='object',
            resource_cls={
                'Bookmark': 'api.views.BookmarkResource'
            })
```
Explicit is better than implicit :+1: