enforced that a force origin cannot be the same as the destination, added ability to write model to xml