usage
```rust
use cacher-rs::{Cacher, Cache};
let mut i32cacher = Cacher::::new();
let v1 = i32cacher.fetch("v1", 10, || 1);
assert_eq!(v1, &1);
let mut stringcacher = Cacher::::new();
let v1 = stringcacher.fetch("v1", 10, || "1".tostring());
asserteq!(v1, "1");
```