refactor cms upload into standalone write
don't push state when we pop
need to pass options
super misc