engine: move commands from reconciler to Engine
engine: use task mechanism in reconciliation