Main refactoring for performance and Spec compilance + many bugfixes and new unit tests

New features:
- simple mediaqueries are now also supported in IE8
- Performance (Resize-Performance, "Scales better", Network-Performance see below)
- Does not download a new image,
	- if it has already a better candidate from the same set (maybe needs an option, some people might not understand this and think it's a bug)
	- while window is resized
- Loads new candidates in background for "smooth" Transition between candidates
- addDimensions (option)
- resQuantifier (option)
- the ``elements`` parameter can now also handle a DOM node (if an img is passed this is polyfilled, if another element is used this is used as the context)
- Mutationobserver (plugin)
- improved errormessages for bad descriptors, bad sizes and wrong source positioning


Following is the list of fixed bugs in your bug tracker by my changes.

Fixed issues:
https://github.com/scottjehl/picturefill/issues/333
https://github.com/scottjehl/picturefill/issues/332
https://github.com/scottjehl/picturefill/issues/331
https://github.com/scottjehl/picturefill/issues/329
https://github.com/scottjehl/picturefill/issues/327
https://github.com/scottjehl/picturefill/issues/322
https://github.com/scottjehl/picturefill/issues/318
https://github.com/scottjehl/picturefill/issues/314
https://github.com/scottjehl/picturefill/issues/313
https://github.com/scottjehl/picturefill/issues/311
https://github.com/scottjehl/picturefill/issues/309
https://github.com/scottjehl/picturefill/issues/304
https://github.com/scottjehl/picturefill/issues/303
https://github.com/scottjehl/picturefill/issues/292
https://github.com/scottjehl/picturefill/issues/270
https://github.com/scottjehl/picturefill/issues/266
https://github.com/scottjehl/picturefill/issues/244
https://github.com/scottjehl/picturefill/issues/142
https://github.com/scottjehl/picturefill/issues/263
https://github.com/scottjehl/picturefill/issues/317
The warning might work but it only covers `source`s that are after `img`, not grandchildren that are before `img` (although we want `picture > video > source` to work).

Is this also too expensive to have in the loop?

```js
if (img.compareDocumentPosition(source) !== 2 ||
    (source.parentNode !== picture && source.parentNode.nodeName.toUpperCase() !== 'VIDEO')) {
    break;
}
```