Add complaint handling & refactor

Supports opengovernment/ops#160
Supports #422