starting to add batching support

graphics now allows for leaving a texture bound
graphics now has functions that don't need a colour input
map now has a self contained render method
optimisation stuffs