Add probe-specified per-thread data passing

Adds a parameter, void **arg_ptr, to the thread_initialize function in a
probe module. The probe sets *arg_ptr = probe_per_thread_data. The probe
module then receives void *arg as the final parameter in make_packet,
where arg = *arg_ptr from thread_initialize. This allows for probe
module to allocate resources per-thread that cannot be shared globally
within the module.

The goal of this is to help remove the need to lock within a probe
module. Rather than sharing global state, requiring the use of a
mutex when writing data, the probe module can send a copy of the data,
or some modified thread-specific version, that is then "put back
together" by the module at the end of the scan.

An example use case would be sending each thread its own random number
generator.
Print config file name to debug log