Massively reduced the frequency of housekeepin checks, to improve performance.

Also renamed _do_housekeeping() to _maybe_do_housekeeping(), because that's what the function does.