Updated implementations

(That's a nice, specific commit description)
Added Promise polyfill