Trying to resolve a promise inside another promise gives 'Cannot set headers after they are sent'
I'm using koa-router to setup a simple 'createNewUser' api call. 
It first does a Promise.all([]) call to check availability of the username+email, and then it does a final Promise call to actually create a user. 
My DB.query() method returns a promise. If I call 'return resolve([])' right away inside this promise, as a shortcut for testing, everything works, but if I actually perform the query, and then call resolve(result), I get the headers error. 

Can any see anything immediately wrong with this flow?
I've created a gist which will work out of the box (you will need koa, koa-router, koa-bodyparser, and promise-mysql dependencies):
https://gist.github.com/rw3iss/118b93348953bd07f17180c2160664ec

I am rather new to the Koa generator workflow, so am trying to wrap my head around this pattern... if anyone can help I'd appreciate it! 
