Shrinking time limit

When testing Onebip's rounding feature shrinking took several minutes without the user being aware of what was happening. This PR gives the user the ability to set a time limit for shrinking so that he can trade-off a more complex failing input for execution time.

The default limit is infinite.
Of course it's not drift tolerant, with no guarantees of monotonic time wherever NTP is present :)