A library implement futrue and promise