
Added SlotPool.hpp, a generic pool container intended to minimize allocations for Table data.

SlotPool is supposed to be used statically to serve as a system wide pool for a specific type. For our use case it is going to be some Table type. It is not thread safe, and requires move or copy constructible/assignable elements, since it will actually allocate (double its size) when it runs out of space. Elements in the SlotPool can be refered to by an index (a slot), that resolves to a simple vector index as a relative pointer into contiguous memory.

I did some performance testing for different ways of storing Table data in memory and this is so far the best I came up with; further testing needs to be done on a live system.

mjgerdes/cg,mjgerdes/cg,mjgerdes/cg,mjgerdes/cg