Use Q module's promise objects for convenience

Signed-off-by: Alexandros Sigalas <alxarch@gmail.com>