Membership Name, Type relation

Hi All
I need some help
I am trying to make a chess management system along with membership management system for my chess club.
Problem 1 :
I need to know how to manage the following challenges
Multiple users (player, Captain, Admin ) a player can be a captain and also can be a Admin also.
Problem 2:
There will be different types of annual membership for
at club, ECF & Fide (these are the 3 bodies ). I need to manage all three types of membership and then these membership have different levels (Bronze, Silver & Gold). Then every membership type will have different gradings for each player for example
A player at club can have the followings:
bronze membership with Club, The membership no could be 12345 and grading 1200
Silver membership with ECF, The membership no could be 6789 and grading 128 E
Gold membership with Fide , the membership no could be F1278AG and grading 2079

The membership levels will be attached to different annual price based on the levels.

Problem 3:
The different players in club, could be part of teams based on the season. so, player1 could be in team 1 in 2018 and player 1 can be in team 2 in year 2019 based on the performance of the matches in year 2018.

I am having problem to understand how to relate the user, season, teams, player, membership, membership type, membership level.

any advise on how to relate all this will be highly appreciable.

Thanks in advance
sanjay