Hi Robert,
I was in a similar situation and I can understand how ugly the callbacks can get in JS (referred to callback hell/Pyramid of Doom).
I found using "Promises", a new concept introduced recently in Javascript, made the code much readable. Check out bluebirdjs.com library which further abstracts the Promises' boilerplate code. It would also convert the traditional code with callbacks into a Promise.
You may want to read the below: