Excited-state calculations with TD-DFT: from benchmarks to simulations in complex environments.