public void Move(ILocation location) { Location.BeExited(this); Location = location; Schedule = Location.Schedule; Location.BeEntered(this); }