RFD: Attribute validation

Because it's easy to define attributes like serializer_class in the wrong place or not be sure if it was _class or _classes, maybe django-rest-framework could use this to verify the coder does things right.

Introduces also InvalidAttributeError, which is raised - only when it's wanted - when an invalid attribute is used. This is most commonly a typo or a misunderstanding.

The advantage of this is that the coder will not need to get into the app to figure out why something is failing, as the app will refuse to start with mistakes.

Please see the code for details.