refactoring + agreement model + some agreement actions on controller