make sure multiple blocks are checked for and released in all cases with non-shared blocks.

we used to have special case for intro content from auth to flush out multiple
blocks but since then we have introduced a flag for the block and now we need to
use that as a test case not a flag on the client.  The key issue now is freeing
up multiple blocks from anywhere (provided they are not shared). While auth can
still provide those, the xsl engine can also do that especially if the link is
killed off early.

We can still leak some memory if a shared block comes in here but we log that as
that should not get to here.