Use promise-like API for jobs instead of events

Change-Id: I87dd68143db2161db5a4a7c9433c85a12b2293a3