Rename DbModel to KvsFieldData.
Provide more information in some exceptions.
Use Sentinels for sentinels, it helps debugging.
Make KvsFieldData work properly in multiple-inheritance uses.
Parents and children can't possibly have defaults

Don't bother looking for defaults for "parents" and "children".
This class can be private in the function.
Clean up a little bit.