refactor
starting with in-app purchases (updates)