Expand the record spy's ability to capture ActiveRecord configuration

#### Expand record spy to catch association configurations
This adds association configuration spying to the record spy. It
now catches `belongs_to`, `has_many` and `has_one` methods and
will allow inspecting the configuration.

#### Expand the record spy validations and callbacks
This adds `validate` to the validations and `after_initialize` to
the callbacks. This allows the record spy to spy on more of
ActiveRecord's configuration.