This sort of pImpl inheritance code code was weird, I got rid of it and added a new pointer in the TileSet class instead.