support being given blob content of XInclude'd files for the DC Code Editor

When the DC Code Editor renders a page that contains a table of contents,
the contents of referenced files may have changed also and that will change
how the referenced file appears in the table of contents. So the Editor
must pass not only a particular section to render but any blob content
of files referenced by the file being rendered. When we go to render an XInclude, we check
if we've been passed the blob content of that file and if so skip reading
the file from disk.

Also, mark links generated by XInclude's with an 'internal-link' class
so we can disable them in the editor because their targets won't exist.