More state cleanup in BaseField, alphabetizing

Finishing off what @tamird started in #205.

Alphabetize all methods in BaseField.

Rather than deleting values out of the options hash, reference the hash
from predicate functions.

Rename `getter_method_name` and `setter_method_name` to simpler
`getter` and `setter`.

Remove the excess options warning since we are generating all field
definitions.
Struct is more terse, but I think we'll keep it like this for now. Specs are passing.