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 believe there will still be at least one copy since the returned value is not a local variable and thus will still live on after the function returns.