Fix typo in rev.13636
Gopher: update to CBDATA_CLASS API

* Convert from typedef struct to full class

* Convert from old CBDATA API to CBDATA_CLASS2

* Add AsyncJob-alike methods to simplify the cleanup process and future
  conversion.

* Remove unused 'req' member

* Remove remove outdated doxygen documentation
CBDATA: log memory leak situations when --enable-debug-cbdata

CBDATA objects are supposed to be explicitly locked and unlocked by all
users. The nominal 'owner' of the data is also supposed to mark it as
invalid when unlocking its reference.

If a CBDATA object reaches 0 locks and is still valid, it therefore
follows that either the locking or invalidate has not been properly
implemented.

Now that we are migrating to CbcPointer usage instead of explicit
lock/unlock macro calls we have started encountering these situations.
Any object reporting a 'leak' must be investigated;
 a) perhapse RefCount is better?
 b) using CbcPointer consistently and invalidating correctly.
Docs: CBDATA documentation update

No logic changes.

* replace documentation advocating the deprecated CBDATA_TYPE() and
  CBDATA_TYPE_INIT() macros with text advocating CBDATA_CLASS2() API.

* remove unused macro CBDATA_GLOBAL_TYPE()
Bug 4093: source-maintenance.sh errors and warnings due to wrong tools/options