:not() seems to be functioning now

needs some tidying up and some more test runs
improved not and lost method chaining

fixed :not() in that it filters after all matches, preventing later
selection of elements that shouldn't have been there
Also, ditched the idea of returning a container node, since it was
complex and didn't add much. The functionality could be reintroduced by
having Set implement the __call or maybe even __index to return the
combined results of all its elements.
the selctor patterns explained
[attribute="value"] working
Moved some details to a function

... regarding [attribute=value] and other matching.
Also explained (in comments) the different matching patterns.
And fixed a bug where /> would be listed as an attribute.
And added a few more tests.
Merge pull request #12 from wscherphof/#6-selectors

#6 selectors: :not() and [attribute="value"] working