Spai = simple promise/a implementation