[SysApps] Move the Promise implementation to a module

So it can be shared with other APIs.
Merge pull request #1200 from tmpsantos/promise_common

[SysApps] Move the Promise implementation to a module