Tile class now supports setting the type from its public interface