helper class for search global object id (SGOID) computation. This
captures both allocation context and count.
NOTE: this is used as a key for associative arrays, but we do
allow destructive updates via init() in order to enable key
caching for lookups that don't lead to new entries.
THE CALLER HAS TO MAKE SURE init() IS NEVER CALLED ON A STORED KEY !!