Added test to verify withhold transaction behaviour

A withhold cursor can read its data when the transaction is closed, so
it shouldn't start a new one upon movement/close.
No implicit transaction on named cursor close

Also, don't start an implicit transaction when fetching with
named with hold cursor, since it already returns results
from a previously committed transaction.
Added test to verify withhold cursors work in autocommit
Allow using named with hold cursors in autocommit
Document WITH HOLD corrections.
Merge branch 'withhold-transactions'