Restore $! if we ignore the close error after block yield.
Check attached singleton for frozen and exclude err msg test.
Move BigMath.log to kernel, so it doesn't need bigdecimal/math.