Execute association conditions in object context.

Execute the given `condition` in the object context. Alternative implementation for #872. 

Also extracted the `association` code responsible to build the attribute and fetch the conditions into private methods.

cc/ @rafaelfranca