public SubjectTraveller(SubjectTraveller other)
 {
     FirstCity = other.FirstCity;
     TripPlan  = new City[other.TripPlan.Length];
     Array.Copy(other.TripPlan, TripPlan, other.TripPlan.Length);
     TravelTime          = other.TravelTime;
     MutationPropability = other.MutationPropability;
 }
        public override bool Equals(object obj)
        {
            if (obj == null)
            {
                return(false);
            }
            SubjectTraveller other = (SubjectTraveller)obj;

            if (!other.FirstCity.Equals(this.FirstCity))
            {
                return(false);
            }
            if (!other.TripPlan.Equals(this.TripPlan))
            {
                return(false);
            }
            return(true);
        }