have associations define accessors on the record spy

This makes the record spy behave even more like an AR object.  Every
association defined also defines an accessor so a method is available
for the association like in an AR obj.  Has many accessors are defaulted
to an empty array.

@jcredding ready for review.