Job system

Some specific APIs will perform tasks that can take longer than a few seconds. Those APIs, instead of returning a result directly, will instead return a Job object, than can be polled to confirm the status of the task being performed, as well as confirming its success.