a future and promise library