Ensure all components of a union query are prefixed #340.
Added test for union queries in Element::findAll().
Wrap parent xpath in parentheses if it contains a union.
Enabled testing on HHVM on Travis
Simplified the Travis build matrix

Testing on different versions of CssSelector is not really worth it given
the test being performed, so let's reduce the Travis load a bit.
Refs #444
Merge pull request #450 from grahambates/develop

Ensure all components of a union query are prefixed .
Closes #340
Fixed the SelectorInterface to accept arrays as selector

The NamedSelector relies on getting an array, but the interface was not
allowing it.
Fixed typehints in several methods of WebAssert

Some methods were only relying on the interface and were typehinting the
implementation, and other methods were typehinting Element while they were
actually expecting TraversableElement.
Fixed access to undefined methods in exception classes
Moved the hasClass method from TraversableElement to NodeElement

Calling it on a DocumentElement would have triggered a fatal error because
its implementation relies on NodeElement methods.
Refactored the representation of the matching element in WebAssert

This reduces duplication of the logic needed to handle array selectors and
improves the exception message when the named selector is used.
Merge pull request #452 from stof/scrutinizer_fixes

Fixes based on Scrutinizer inspections