SchemaManager and Store flexibility

Mostly benign tweaks that give more state information to implementations, or Abstract derived, about what is going on. This will be used in the FDB implementation for a fairly dramatic difference in tree/key location strategy.

AISMerge change is ugly, as the comment suggests. It basically just tightens up how many times a tree location is generated for PRIMARY indexes.

BasicDDLFunctions change is actually a significant bug. The code from e9af13ca didn't adjust the locking strategy for ALTERs resulting in a new group tree. Fix it even though it will be changing significantly quite soon.