returning your promises is important