Molecular Self-Assembly and Nanochemistry: A Chemical Strategy for the Synthesis of Nanostructures