Refactored EventLoop::timeout_ms to use Duration instead of uint.

Addresses #32. Removed `_ms` from the method name since the Duration class can represent a range of units.