WebRTC/MediaHandler: inline callbacksLast usage instead of using Utils
Move Promise code from Utils.js to Utils/Promise.js

It is imported by other modules as SIPPromise to avoid namespace collision

Utils.Promise still exists for use by tests
Utils/Promise: split addPromise and defer into own modules

This avoids overwriting properties of the global/imported Promise