Filtering light with nanoparticles: a review of optically selective particles and applications