Expose lower-level parsing API.

The new functions cmark_new_doc_parser,
cmark_free_doc_parser, cmark_process_line, and cmark_finish
allow you to feed lines one by one (possibly from several
files) to the parser and call finish when you're done.

This is now used in main for mulitple files.
Updated man page for multiple file inputs.
Fixed install target in src/CMakeLists.

Use proper include directory, include needed headers
chunk.h and references.h.
Added a 'bench' target which does some basic stats on multiple runs.
bench target:  Added BENCHPATT.
Don't expose append_inlines.
Workaround to add -fvisibility=hidden for older versions of cmake.
Make 'bench' target depend on BUILDDIR.
Fixed 'make bench' again.
'make bench' - don't require rebuilding each time.
Rename include guards for consistency and to avoid reserved identifiers
Merge pull request #200 from craigbarnes/incguard-fix

Rename include guards for consistency and to avoid reserved identifiers
Moved AST details from public header cmark.h to private ast.h.
cmark_render_html now just returns a regular C string.

This way, we don't have to expose buffer.h; it is just used
internally.
Moved inline/block-making functions to ast.h.

Now we no longer depend on buffer.h or chunk.h in the public API.

Install cmark.h and cmark_export.h into PREFIX/include instead of
PREFIX/include/cmark.
We don't need to include stdbool in the public header.