Put back the correct call to glBufferData that just passes the structure address.
Have eliminated all of the global mutable variables coming from the C version. Still some work to do to see what else can be "C++ified".