Ability to override name/description of view

Added settings and additions to formatting.py

An example of a settings file would be:
```
def view_name_function(view, suffix=None):
    if view.__name__ == 'AnimalViewSet':
        if suffix == 'List':
            return 'All Our Animals'
        else:
            return 'Animal {}'.format(suffix)

    return False

def view_description_function(view):
    if view.__name__ == 'AnimalViewSet':
        return u'<h3>Welcome to an example</h3> \
<p>This example shows that we can put HTML in our description of a view through this function.</p>'

    return False

REST_FRAMEWORK = {
    # Use hyperlinked styles by default.
    # Only used if the `serializer_class` attribute is not set on a view.
    'DEFAULT_MODEL_SERIALIZER_CLASS':
        'rest_framework.serializers.HyperlinkedModelSerializer',

    # Use Django's standard `django.contrib.auth` permissions,
    # or allow read-only access for unauthenticated users.
    'DEFAULT_PERMISSION_CLASSES': [
        'rest_framework.permissions.DjangoModelPermissionsOrAnonReadOnly'
    ],
    'VIEW_NAME_FUNCTION': view_name_function,
    'VIEW_DESCRIPTION_FUNCTION': view_description_function,

    'DEFAULT_FILTER_BACKENDS': ('rest_framework.filters.DjangoFilterBackend',)

}
```
I added the suffix to the name function first because it was available int he formatter and second because I think it would make sense to have that so you could make different names depending on the actions/suffix. Wouldn't be bad to have that for description too, but it wasn't in the formatter so I left it alone.