Fix bug in `empty` method

Ensure that when a node is empty, the childrens' `parent` reference is
destroyed.
Add performance optimization for  `empty` method
Accept one or more node references as a context

From the jQuery API documentation on the `jQuery` function [1]:

> ## Using DOM elements
>
> The second and third formulations of this function create a jQuery
> object using one or more DOM elements that were already selected in
> some other way.

[1] http://api.jquery.com/jQuery/#using-dom-elements
added parentsUntil method
Filter duplicates and add  more tests for parentsUntil method
allow cheerio.load work with DomHandler
accept dom of DomHandler to cheerio.load
Optimize add and remove class cases

Test: attributes - Add Remove class (file: jquery.html)
  cheerio x 1,953 ops/sec ±1.70% (94 runs sampled)
  old x 718 ops/sec ±2.92% (88 runs sampled)
  jsdom x 55.61 ops/sec ±1.16% (74 runs sampled)
fix 'content undefined'
update version
Implement `$.fn.get`
Deprecate `$.fn.toArray`

Because `$.fn.get` is more powerful than `toArray` and because `toArray`
is not implemented by jQuery, the `toArray` method is no longer
necessary. Deprecate it so it may be more safely removed in some future
version of this library.
Merge pull request #415 from jugglinmike/get

Implement `$.fn.get`
use latest htmlparser2 and entities versions
call encodeXML and directly expose decodeHTML
Merge pull request #417 from MatthewMueller/version_updates

Version updates
More links to htmlparser2...

...notable before listing the options
Merge pull request #418 from dandv/patch-1

More links to htmlparser2...
only use static requires

cheerio is now browserify-able
added linebreaks