Having just come from a large public social event, I met a lot of people who I don't want to lose contact with, but maybe don't want being able to pop in on me all the time without me having to stay yellow all the time.
The solution:
The current friends list becomes simply a contact list, with the ability to tag people as friends. The only difference is that people not tagged as friends are treated as one status level "lower" than friend tagged contacts.
🔵Blue: Anyone can Join from friends or contacts.
🟢Green: Friends can join, contacts can request.
🟡Yellow: All must request.
🟠Orange? (new): Only friends can request.
🔴Red: No one can request.
Adding a contact means you can get some time to know someone. It also means you don't have to delete someone just because maybe they need a pause in how often they can join.
Whether the friends and contacts see your status differently or just get a different response is probably a matter of preference, so would be something to have toggle-able.
Edit: Location viability would follow request ability. So Contacts would only see your location if they see you as blue.