ShadowDiffusion: Diffusion-based Shadow Removal using Classifier-driven Attention and Structure Preservation