fix(ArrayType): fix .equals for array types

Closes #1538
fix($urlMatcherFactory): fix mixed path/query params ordering problem

If a state defined a query param and a substate defined a path param, the URLs were generated and matched in the wrong order.  A substate creates its UrlMatcher using .concat() and a concat()'d UrlMatcher assumed the parent params order mattered.  Switched to populating an array of params in the order they were parsed in UrlMatcher constructor.

Closes #1543