Reusing segments after hitting the max segments per cell limit

Starts https://github.com/numenta/nupic.core/issues/232.

Have yet to implement logic for reusing synapses, will do that separately.
I'm relying on [Return Value Optimization](http://en.wikipedia.org/wiki/Return_value_optimization).