Added group sharings controller and representers; enforce that a group is shared with a user or another group