Prep for marketing challenge

mostly switching to middleware + controllers
I think you're right!