more modular image upload and address change