refs #9257. Use ClusterRegister. Tests pass.
refs #9257. Trying to fix a bug with merge on ClusterRegister

The problem does not get picked up in the unit tests, and only occurs with
a real dataset to work on. The problem is that we get a overloaded stack
due to some clusters becoming their own children. When the getLabel is
then called on the compositecluster, it results in an overloaded stack. I
think this could be fixed by changing the logic and working of the merge
method to use a member vector<set<label_id> > to track each cluster group
for the incomplete clusters, and only generating the composites (which
would only ever by one level deep) at the end of the process.