Processor redesign: instead of emit action name, emit 'message', with function processor at constructor