Don't examine superclasses when redefining belongs_to methods

A belongs_to definition with a name that exists as a method in Base, such
as post, results in an error when included:
NameError: method `post' not defined in MyTestClass
The code at that point is trying to remove any existing method if it exists
before redefining it.
The method check used method_defined? which takes into account modules and
superclasses. So with :post, that returns true. Then remove_method is called,
which only works on the current class, so you get the above error.
instance_methods(false) only returns the current classes methods and not
their superclasses or included modules, getting around this problem.