added immediate promise constructors