Software-defined city infrastructure: A control plane for rewireable smart cities