removed non-required yield, slowly understanding this async/promises thing
refactoring to more granular funcitons
more refactoring
more refactoring