fix up LDST test functions pi_ld and pi_st to respect timing
(combinatorial setting followed by test followed by immediate unsetting
is *not* ok. it has to be set WAIT (yield one clock) and *then* clear)
added a simulation function get_exception_info() which returns a
LDSTExceptionTuple containing the yield()ed exception information
reason: at the time that the exception was raised, THAT is when
the exception information must be obtained. by the time that
the LDST port is_ld_i/is_st_i is lowered, that is far too late