Make all test pass

This pull request is to pass all tests which is currently commented out.

1. Assign clock instance to `this.clock`
2. Put `setImmediate` in `toFake` list for `install`
3. Use `undefined` for `refute.defined` test
4. Use range comparison to test `now()`
5. Test behavior of `hasOwnProperty`