Move VBO buffer allocation out of allocate() and into BindVBO()

fixes #256