Vastly improved tiling system.

I finally changed over to 2-D arrays. I decided to leave inherent x and
y coordinates for each tile. We will just have to be careful not to mix
things up. I made some minor fixes in other classes. but I'm not 100%
sure that they work yet. Also the generation may not be very good. When
I get tiles to render we'll see.