Crowd: Factory function catches exceptions
BufferList: Add SetNumBuffers API
Shader: bge_Model now a uniform

Added new attribute bge_InstanceModel to be used for instanced rendering
through Crowds.
Node: No longer has a buffer for its model matrix
Bakge: Include std new header
BufferList: Count of 0 does no initialization
Crowd: Change client buffer allocation & initialization
Crowd: Remove Reserve method. Add Reserve constructor
Crowd: Factory function catches exceptions
Crowd: NULL-checking in Clear method
Changing memory allocation methods for no-throw guarantee.

Operator new throws a bad_alloc exception when there is not enough memory
to allocate the object. Instead we'll allocate with malloc (or calloc),
and throw an internal exception if the allocation returns NULL. Then,
placeable new will be used to construct the objects at the allocated
memory.
Free memory blocks when catching an exception
test/grid: Use specific shader, generic ones seem broken
ICuboid/Rectangle: Fix definition of pure-virtual destructor
BezierCurve: Fix segfault issue
TestEngine: Shut down engine after running

Fixes a memory leak
test/grid: Clean up, remove useless code
BezierCurve: Formatting
BezierCurve: Fix GetPointAt NULL checking
BezierCurve: Check allocation of temp buffers