Back-port a few improvements from the Kafka experimental branch of ts_salobj to the normal branch, including:
- set_random_lsst_dds_partition_prefix: use os.urandom in , so it cannot be seeded. This avoids any risk of duplicates while running tests in parallel.
- base_csc_test_case: call random prefix generator in setUp().
- SalInfo: add _closing flag and possibly a done_task. The problem with a single isclosed flag is that there is no way to tell the difference between "never opened" and opened and now closing or closed.
- Consider a _closing flag or similar solution for other kinds of objects, as well.
Also fix a few instances where library code is still using the deprecated salobj version of index_generator, instead of the version in ts_utils.