Minor tweaks to C++ encapsulation necessary to subclass XMLPrinter sufficiently to create XMLPrinterHTML5

Added method DynArray::PeekTop(), provides useful abstraction in tinyxml2::XMLPrinterHTML5::CloseElement().  Made tinyxml2::CloseElement() and destructor virtual.  Made tinyxml2::_SealElement(), _elementJustOpened and _stack all protected instead of private (needed in XMLPrinterHTML5 to selective prevent some elements from being self-closing).