refactor protocol processing to use Mikro and remove ProtocolStageHandler