Change implementation of P4 class from being a blessed reference
to an integer (pointer) to a blessed reference to a hash. The
pointer is now stashed in a member of the hash. This makes it easier
for those that want to to subclass the P4 class and bolt on their own
functionality. No functional change.