[CS] Pull in the parts of niceogiri that we need

First step to migrating to true Nokogiri APIs and ditching subclassing/importing. Also had to fix some inappropriate xpath namespace usage.
[CS] Kill Nokogiri xpath aliases for #find and #find_first
[CS] Switch #element_name for Nokogiri's #node_name
[CS] Don't support XPath with non-string path
[CS] Properly document namespace parameters
[CS] No longer rely on nil values removing attributes

This removes the last of the Nokogiri monkey-patches
[CS] Have the XMPP parser emit simple Nokogiri::XML::Nodes

Use a document per stanza to enable proper garbage collection.

We'll cycle back and decorate these with stanza objects later.
[CS] Reduce duplication in resetting parser