Implement Resource to replace TileGraphic. close #20
Merge branch 'resource' into dev