public class Tile
{
    public Tile (Coordinate coord, String type)
    {
        _position = coord;
        _type = type;
    }

    public final String content ()
    {
        return _type;
    }

    public final Coordinate position ()
    {
        return _position;
    }

    @Override
    public String toString ()
    {
        return _type;
    }

    private Coordinate _position;
    private String _type;
}
@@ -13,16 +13,104 @@
  Tile%0A%7B%0A
+    public Tile (Coordinate coord)%0A    %7B%0A        this(coord, TileId.UNEXPLORED);%0A    %7D%0A%0A
     publ
@@ -435,24 +435,507 @@
 ype;%0A    %7D%0A%0A
+    @Override%0A    public int hashCode ()%0A    %7B%0A        return super.hashCode();%0A    %7D%0A%0A    @Override%0A    public boolean equals (Object obj)%0A    %7B%0A        if (obj == null)%0A            return false;%0A%0A        if (this == obj)%0A            return true;%0A        %0A        // only check location not content%0A%0A        if (getClass() == obj.getClass())%0A        %7B%0A            Tile temp = (Tile) obj;%0A%0A            return _position.equals(temp._position);%0A        %7D%0A%0A        return false;%0A    %7D%0A%0A
     private 

Update Tile.java