only emit decrunch code when crunch is enabled
optimize Module.setStatus
only do run dependency tracking when assertions are on
reuse some FS errors in places where overhead is high and stack importance is low