https://macroquad.rs/tutorials/fish-tutorial/
Register/login new users via social networks, email, or device ID.
Let users register with their email.
https://heroiclabs.com/docs/user-accounts/
Dynamic, seasonal, get top members, or members around a user. Have as many as you need.
For the M1 we just need one leaderboard to rule them all. In M2 we can look at making them geographically based.
https://heroiclabs.com/docs/gameplay-leaderboards/
Players should be able to just "look for match" and be automatically paired up with other players. Alternatively, they should be able to generate an invite code that they can send to their friends for a private match.
https://heroiclabs.com/docs/gameplay-matchmaker/