don't import numpy in pickleutil until it is used

can affect startup time, memory usage, etc.

as seen in #4199