Basic implementation of deferreds