refactor generate_batch api
the layout buffer now owns the sprite proxy