Use independent map_regions for drawing layers

Change tgfb_layer_draw() so that it takes map_region for each layer. This
needs polishing, still, but I wanted to make the background scroll for
laytest.

The map_region->w and ->h now give the actual width/height of the drawing
and not the limit for the rectangle to draw from ->x and ->y. I believe that
this was a bug.