(#942): Fix crash when XML files get recursively included through XInclude
There is a new limit, MAX_XINCLUDE_DEPTH, which is a constant with the maximum level of nesting for XInclude.
We keep a counter of the current nesting level in XmlStateInner, and check against the limit every time we need to xinclude another XML document.
The sample file has <xi:include parse="xml" href=""/> which properly causes the same file to be included, per https://www.w3.org/TR/xinclude-11/#include_element
The href attribute is optional; the absence of this attribute is the same as specifying href="", that is, the reference is to the same document.
Fixes #942 (closed)