small waitUntil optimizations

we probably don't need per frame checks in these cases
using switch for lazy evaluation