Start with unified nodes
Switch cmark_node_block over to cmark_node
Switch cmark_node_inl over to cmark_node
Remove old node_block and node_inl
Move public stuff from node.h to cmark.h
Move inline-related stuff to inlines.c
Move reference type definitions to reference.h
Rename ast.h to parser.h
Move cmark_free_nodes to node.c
Set prev, parent and last_child for inlines
Store link labels as children in tree structure
Set last_child and parent in make_link
Make parse_inlines add directly to parent.

Previously parse_inlines returned a list of parsed inlines.
This had to be added to the parent, and fix_parents had to be
called to manually add the 'parent' links to the children, and
the 'last_child' link to the parent.

Now parse_inlines takes the parent block as a parameter,
and uses cmark_node_append_child to add the children, so that
the pointers should be properly managed. This avoids the need
for the fix_parents pass.