private void VisualCell_FacingChanged(object sender, Face newFace)
        {
            if (sender == this)
            {
                return;
            }
            VisualCell Sender = sender as VisualCell;

            this.facing = newFace;
            int delta = this.ShipIndex - Sender.ShipIndex;
            //Change the cell position Based upon the Delta
            Point Origin = Sender.BoardLocation;

            switch (newFace)
            {
            case Face.East:
                SetBoardLocation(new Point(Origin.X + delta, Origin.Y));
                break;

            case Face.South:
                SetBoardLocation(new Point(Origin.X, Origin.Y - delta));
                break;

            case Face.West:
                SetBoardLocation(new Point(Origin.X - delta, Origin.Y));
                break;

            case Face.North:
            default:
                SetBoardLocation(new Point(Origin.X, Origin.Y + delta));
                break;
            }
        }
 internal void Connect(VisualCell vC2)
 {
     throw new NotImplementedException();
 }