Structure by design: from single proteins and their building blocks to nanostructures