Fixing switch bug.
Finish timer queue.

- Re-add the timing options for the selector.
- Make timers, selector have microsecond granularity.
- Implement cancel timers.
Refactoring main loop into reactor.

- Added minutes, hours to time system.
- Fixed dispatching bug in the timer queue.
- Handlers take reactor as an argument for all events.