Extract TileSet interface and small fixes around the project