```NameError``` seems a bit odd, since it means that a name couldn't be found in the local or global python namespace.  I see we use it in ```update``` here as well.  Is it common practice to it for cases other than missing from the python namespace?