Oops, bad editing of my previous post, last sentence of first para should have been removed. But I think a more relaxed relationship could be added, not changing the ones we have now, and overall I think that rel_types can apply between any object type, not just parties and party subtypes.
Also, I left out one final relationship: coach_rel could be applied between a coach and an club, or a new rel_type could be used for this.
Maybe it is worth noting that this setup is very similar to RDF (subject --predicate--> object), where you have typed relationships, which is more than mapping.