chg: scanner: Measure upload after SS=0
To calculate the size of the upload, the HTTP block size and how many bytes have been uploaded after SS=0 (according to the HTTP request or tor's CIRC_BW events), the following changes has been made:
- Create and open data file instead of creating the data in memory for every relay.
- Move stream events to a class and handle the events in a thread, except when attaching a new stream to a circuit
- Move circ_bw events to class
- Move callback to class
- Change HTTP block size given the target
- Rename the thread with the circuit id to easier debugging
Closes #40142 (closed)