Multilevel X-Pol: a fragment-based method with mixed quantum mechanical representations of different fragments.