[p6object] Allow specification of an already created metaclass in the register method, and create new metaclasses based upon the type of the current metaclass, so we handle derived ones better.
[p6object] Allow specification of an already created metaclass in the register method, and create new metaclasses based upon the type of the current metaclass, so we handle derived ones better.

git-svn-id: 6e74a02f85675cec270f5d931b0f6998666294a3@40232 d31e2699-5ff4-0310-a27c-f18f2fbe73fe

ashgti/parrot,ashgti/parrot,ashgti/parrot,ashgti/parrot,ashgti/parrot,ashgti/parrot,ashgti/parrot