make RichDeferred an implicit value class and use future.unit