minor fixes
participation app cleanup + tests
DRY (Don't Repeat Yourself) in custom save and delete methods of participation app