Forcing to use Builder instead of constructor for Tile and TileEdge