Merge conflict
pep8 fixes
fix up and add tests for updating promo codes/preferences