Framework for recon and scanning tools with bounded concurrency, per-tool timeouts, and deterministic output artifacts