Slightly easier to read code (uses  on promise objects ) and error case handling.