cautodoc: shuffle directive class structure
cautodoc: shuffle directive class structure

Split up CAutoDocDirective to base class CAutoBaseDirective and subclass
CAutoDocDirective. New directive classes may be subclassed from the base
class.

jnikula/hawkmoth,jnikula/hawkmoth