add loading protection + add Groups controller, template, route