further modularizing
lightweight instances for synchronously successful and failed futures