Towards Molecular and Supramolecular Devices