refactor site, user, group relationship to make more sense