Cleaned the var-defs and added a required min-version for node.
Moved a sync function to return a promise, as a proof-of-concept.
Converted the rest of the jobs to return promises and simplified the job-runner.
Made another function not use fasync.

- It also uses async fs.readdir now.
Made another function not use fasync.
Purged fasync from package.json.
Replaced the fasync dependency with Q promises.