make Layer serializable
Inner class for tile rendering
move more tile logic to inner class
Split inner class out of renderer