How to create a site for sports clubs

I would like to create a multi-site or buddypress site (or a combination) targeting local sports clubs. Which plugins can I use to create a site like this? The site must have these features:

- A map shows all the sports clubs in the area
- Visitors can click the map which is linked to the clubs individual page.
- Visitors can search a specific club or tick ‘football’ ‘tennis’ ect.
- Logged in users can see a stream showing the latest news from clubs and persons they ‘like’.

Clubs individual site:
- The clubs can sign up for free and create a site for their club.
- The club just have to fill in simple informations about:
o Which sports activities are available in the club
o When and where each team practice
o Latest news about matches, Results, teams ect
o Gallery
o Prices and sign up form
- The clubs create sub-pages for each of their team.
- Users can write status updates like facebook - only visible for other team members.
- The club can charge their members a membership fee to attend the sport activities.

The challenge is to setup a site which contains multiple user roles:
- Site administrator (me)
- An administrator for each club (In charge of membership fees)
- A coach for each team
- Team members