feat($promises): 3rd-party promise impls should now work #910