Polish: upgrade TunnelStateData to CBDATA_CLASS2()
CBDATA_CLASS2() removes the need to define new/delete operators and
removes soem uses of cbdataFree()/cbdataAlloc()
Also replaces several abuses of the cbdataInternal*() locking API with
CbcPointer<> auto-pointers. The existence of some of these locks needing
to be done is questionable since AsyncCalls scheduling protects better
against the 'deleted under our feets' problem.
For now the locks are retained since it is not yet easy to track down
which are safe and which are removable.