Unload blocks during /clearobjects

Currently /clearobjects never unloads the blocks it loads (until the command completes and the normal server operation resumes, causing Map::timerUpdate() to be called again). /clearobjects consumes <del>13GB</del> <ins>22.5GB</ins> on VanessaE's server, for example.

With this patch, Environment::clearAllObjects() unloads unused blocks in an interval
defined by max_clearobjects_extra_loaded_blocks (default 4096). Blocks that were already loaded before /clearobjects won't be unloaded by the new code.