Made all the set* and get* functions work to the Date spec.

Wrote the unit tests to test against http://www.ecma-international.org/ecma-262/5.1 and then changed the functions to follow the spec. Pretty much every set* or get* function was changed in the process. All changes except the ones to get/setYear are backwards compatible to the API that was there before.

This closes this issue: https://github.com/mde/timezone-js/issues/48