Once we start editing the picture, why do we need to pass around the original? The only reason we would need it is if we offer an option to reset all changes, but right now just passing the byte stream keeps track of the most up to date edited version.