New Feature

-Users can now view all groups and make request to join groups
- Group leaders can accept or reject these requests
- improve basic code structure