Refactor Photos to support background work with message pusher