tests: Add a comment about viewing the ExplodedGraph

This should aid future debugging.
bugs: Add a bug about performance testing
bugs: Add a bug about ownership attributes
plugin: Split Checker into Checker and ASTChecker

Move the AST-specific virtual methods into a subclass, so that the
Checker base class can eventually also be used for path-specific
checkers.
plugin: Add some debug macros for dumpable objects

These will be used by the GError plugin.
plugin: Add support for path-sensitive checkers

Path-sensitive checkers, as opposed to AST checkers, examine all
possible run time control flow paths, rather than the structure of the
code. The GError checker will be the first of these.
fixup! tests: Add a comment about viewing the ExplodedGraph
gerror: Add a GError checker

This is a path-sensitive checker which detects various invalid usages of
the GError API from GLib, such as overwriting GErrors which have not
been cleared to NULL, or double-freeing GErrors. It can statically
detect all run time errors from preconditions in GError methods.

Includes a full unit test suite with > 95% coverage.