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.
suggestion: instance variables are very prone to nil errors on typos - i like to create `private` `attr_writer`s for these attributes and then use `self.attribute = attribute` in the initializer.