Diameter-selective non-covalent functionalization of carbon nanotubes with porphyrin monomers.