TrigP1Test+TrigValTools: re-implement "preload" ART tests
Following the new default configuration of preloaded running at P1 as
described in ATR-22143, update our ART tests accordingly using the new
forceConditions
modifier. In addition, to mimic the SMK generation as
much as possible, first dump the configuration into a JSON file and then
run from it using a "new" run number. For the latter to work, one
additional tweak was needed to avoid loading non-existent prescales from
COOL.
Re-factor the rather large code of the "preload" tests into
TrigP1TestSteps.py
so it can be re-used by the menu-specific tests.
To make the implementation of the above easier, introduced a new PyStep
class into the TrigValSteering
framework that allows to implement Python-only "steps" via
a user-defined function.