AbstractSchemaManager helper methods

A handful of methods in AbstractSchemaManager called at specific points (e.g. immediately prior to committing a drop). This will let implementations not have to reverse engineer what's happening from the more generic save methods.

Similarly, a method on NameGenerator to allow external tree name generation to be tracked in the normal flow.

These are used by the FDB implementation to generate tree names (from a Directory) and manage their lifetime. This seemed like the least invasive, but not generally horrible, to accomplish this.