Add membership model and ability for users to join and leave groups