Uplift `belongs_to_node`to common ancestor

Now, all classes supporting an attribute `belongs_to_node` are derived
from a common ancestor, more specifically a mixin,
`FFM._Belongs_to_Node_`. The former mixin `FFM._Belongs_to_Node_` now is
called `FFM._Belongs_to_Node__Left_`.

This change increases the power of polymorphic queries like::

    scope.FFM._Belongs_to_Node_.query \
        (Q.belongs_to_node.owner == some_subject)