Check for required fields

This implements the `Meta.required_fields` option added in 6c88301. It is supported by the `create()`, `save()`, and `remove_fields()` methods.

This code can probably be moved to a separate method, but that will be tackled as part of a larger refactor.

References #2
Document required_fields

This adds a `required_fields` section to the documentation for the `Meta` class.

Closes #2