This is basically a bad-level call: ui scripts are registered *after* the modules. It only works for addons because those are loaded even later. Now the nodeitems_utils module just defines a function which is then called by the UI script, rather than the other way around.