Iterators
	ZZ_HYPER_SINGLE_AGGREGATE(hier,Department,Employee);

	Department *dp;   Employee *ep;
	hier_iterator it(dp);
	ITERATE(it, ep) {
			....   // traverses through  all  Employees under dp
			hier.remove(ep);  // smart iterator
			delete ep;  // even this is possible, but must remove first
	}

Syntax similar to STL, but must be different because this is based on intrusive data structures.