I think I finally found the cause of a key laziness bug in reactive.  It took me a long time to track down.  The way I structured the AddBounds type stops me from getting partial info I need.  There's a critical max on times in joinE.  It'll be 'max (NoBound t0) ta', and I know that ta is either a NoBound or a MaxBound, but without knowing which, no info can come out, which stops the consumer of that max from knowing that the time is at least NoBound t0.  Now I think I have to make some pervasive changes to reactive.

I'd like to develop the QC tests that will catch these mistakes much earlier.   I recently read the "Chasing Bottoms" paper, which some good techniques.

   - Conal