Use a panic-free function to multiply timeouts.
Previously we used Duration::mul_f64, which panics if its output is out-of-range. That shouldn't actually be possible for the values we're giving it, but probably it's better to just multiply in a safe way.
This resolves a couple of XXXXs and therefore relates to #231 (closed).