You have to do the aliasing before any code is compiled using nz.
When code like nz::p1() is compiled, a pointer to the *nz::p1 glob is cached; at run-time, only the CV lookup within this glob is performed.
Something a s simple as BEGIN { *nz:: = *pz::} will probably do what you require.