Pin `expect.js` to 0.2 

As long as https://github.com/LearnBoost/expect.js/pull/102 isn't resolved, 0.3 causes bugs.
Remove nodes from their previous structures

When manipulation methods operate on existing nodes, ensure that these
nodes are removed from their previous structures.
Merge pull request #350 from jugglinmike/cleanup-manip

Remove nodes from their previous structures
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)
Cache rendered HTML on element objects

Test: manipulation - html render (file: jquery.html)
  cheerio x 814,945 ops/sec ±3.04% (84 runs sampled)
  old x 208 ops/sec ±3.97% (79 runs sampled)
  jsdom x 51.31 ops/sec ±4.01% (56 runs sampled)

Test: manipulation - html independent (file: jquery.html)
  cheerio x 8,974 ops/sec ±5.33% (79 runs sampled)
  old x 8,787 ops/sec ±4.41% (85 runs sampled)
  jsdom x 252 ops/sec ±6.28% (70 runs sampled)