Transition to a Smart City: The Building Blocks