time: Turn Ticker and Timer into cdef classes
- cdef their attributes (else accessing any of them raises AttributeError), in particular use pychan and sync.Mutex in cimport mode. - change `with mu` into explicit lock/unlock (since pyx sync.Mutex does not support with). - use INFINITY instead of None for empty dt.
Showing with 78 additions and 51 deletions