Reversible assembly of nanoparticles: theory, strategies and computational simulations.