Revamp node-saucelabs

Cool stuff:
- Fixed `getTunnel` and `deleteTunnel` methods.
- Added tests for all methods. You can run `make` to do linting, run the tests, and generate a coverage report (hypothetical 99% coverage according to `jscoverage`).
- Refactored `lib` to remove repetition and increase readability.
- Updated `README`.

Controversial stuff:
- I renamed `Saucelabs.js` to `saucelabs.js`. Apparently, capital letters in file names is frowned upon in node.js.
- I don't check that `callback` is a function in method calls. If it weren't a function, the call to the original method would have been pointless, so I prefer to just throw an error if a callback function isn't provided.
- I don't filter attributes in methods like `updateJob`, as was being done before. I see little to no benefit in doing this, and not doing it helps us avoid bugs, and frees us from having to modify the code when they add new attributes. I think final users should have to deal with this complexity, not this library.
- I added my name to the list of authors in the README... :suspect:

If you don't agree with any part of the pull request, I probably did the wrong thing, so let's discuss it.

Thank you!