Passed all tests

Using `new Date(dateObj)` obviously works only on V8. This is now fixed so a
date object is created with `new Date(dateObj.getTime())`.
Fixed bugs in isAfter and isBefore
Ironically reordered the methods so `#reorder()` comes before comparison
methods
More tests