Path rewrite
Path system rewritten. It now supports the '|' operator for selectors and filters. It also supports parentheses and strips unnecessary whitespace.
This pull-request has full support for '|' in filters and selectors. I am not ready to merge it, however, because it needs some serious optimization.
@beevik any updates on this? To me it looks like this would be just about ready to merge.
It works, but it generates way more garbage than I am comfortable with. I've been debating whether the additional garbage is worth the relatively limited set of new features this change will make available to end-users.
I have decided to abandon this rewrite. I am not happy with it.