Good question, Derek and John weren't completely sure of the right place for this call when we went through all the various places things change: i.e. Parallel vs Serial mesh * serial vs parallel runs * mesh adaptivity...  I'm not aware of any _one_ place that catches all newly created DOFs.  If there is one, please enlighten me.  As it stands, it is "safe" but wasteful to call this function multiple times since it won't generate new unique IDs if they already exist for the active DOF objects.  This could get even more expensive with ParallelMesh though.  I plan to look at this more when I get back to this patch.