Redesign how request is processed and processors are invoked
Created by: sashaostrikov
See how can necessary processors be invoked and how dependencies (logger, db connection, etc.) should be passed to them: e.g. during initialization, or per-request
Possible implementation of this: make all the processors run as a separate goroutines.
Another idea: make processors not generic and accept any
and then cast any request to desired type. This will let us just have one map of processors in DataExporter