cpp & shape

* cpp file for game, to improve compile time (finally)
* cpp for delauny, to improve compile time
* obstacles now have shapes, instead of being shapes.
* one less dynamic cast in most of the intersects code
* prepping to get cellspacepartition into delauny, which will greatly
improve performace. fluid-looking real-time voronoi diagrams will be
pretty sweet.
* mazegen will not create opening if the resulting corridor is too small