Relation roles

Created a pull request so we can review, discuss, and merge.
I think that could work, I cannot currently recall if there was a reason to only change the callback and not the argument.