Runs a Future after a delay
Future<T> delayed(Duration duration) async { await Future.delayed(duration); return await this; }