The whole process could use more promises though. :)