A Unified Urban Mobile Cloud Computing Offloading Mechanism for Smart Cities