@domcleal, good idea but if I do this 
```ruby
        define_method md[1] do
            if ancestry.present?
              send(md[1]).class.find_by_id(send("inherited_#{field}"))
            else
```
I get a 'stack level too deep' error because I'm overwriting the `belongs_to` method in `define_method`.  If I was defining a different method, then it would work