Verilog TCL_PLI, a Framework for Reusable, Run Time Configurable Test Benches