Add support for having no expiry on a cache region.

Right now setting e.g., `cache.expire = None` results in an exception because it's interpreted as a string. This fixes it.