Timer

Simple implementation of a Timer in async Rust.

Example

```rust let task = || { eprintln!("task was executed"); None };

let timer = Timer::new(task).withgracefulshutdown(signal::ctrl_c());

timer.await; ```