Extracting the best width value calculation as a reusable static method (`getClosestValue`).

It is going to be reused to compute the best pixel ratio.
Reformatting core tests
Testing `determineAppropriateDevicePixelRatio`
Implementing `determineAppropriateDevicePixelRatio`
Updating the pixel ratio value before each loop, in case the zoom level changed meanwhile.
`availablePixelRatios` documentation.
Merge branch 'feature-availablePixelRatio' of https://github.com/oncletom/Imager.js into oncletom-feature-availablePixelRatio
Changed Ruby version
Sauce Remote Testing
Merge pull request #70 from oncletom/feature-saucelabs

Sauce Remote Testing
Tuning testing configuration

- making sure Firefox is used in `npm run test-watch`
- ensuring the latest version of Sauce connect is used, otherwise it would not connect properly
Fixing `length` check.

`hasOwnProperty('length')` is not supposed to work on an `NodeList` as it's an inherited property.
Fixing `window.devicePixelRatio` stubbing.

It was not overridden in Gecko. The code was altered to accept an optional context, possibly not containing the expected property.
Merge pull request #72 from oncletom/fix-firefox-testing

[READY] Gecko Compatibility
`window.addEventListener` -> `var addEvent`
Changing tests to see if chai can be possibly compatible with IE8
Page offset generator and tests
Fixing IE/W3C eventlistener
JSHint compliance
Converted tests to expect.js

It is compatible with Mocha, Karma and mostly, IE6!
It then requires a very few changes from chai.