Spin when checking for hazard pointers during discard.  This hardly ever fires, but we can reasonably race with a reader that has published a hazard pointer before re-checking the WT_REF state.  Give such readers a chance to back out before asserting.

refs #1039, #1261