Support for both SimpleXML and DOM

Matcher now uses DOM by default but can parse everything by SimpleXML by
passing false as second argument for `fromHtml` and `fromXML` methods.
DOM is used again by default because even though SimpleXML is really
simple, it's wrong in way how it evaluate XPath (ignoring text() for
example) and cannot do certain common tasks (try to select only text node
child or get back textual content of some node and it's children).

SimpleXML is just gold covered shit.