A simple nonblocking promise implementation