A Heterogeneous Quantum Computer Architecture