Re-imagine set-shape
Re-imagine set-shape

- prefab the roles to be mixed in
- handle case if a shape with no dimensions is specified a bit better

Makes creation of shaped arrays about 25% faster again.  But it is
still causing a global deoptimization :-(

MasterDuke17/rakudo,raydiak/rakudo,MasterDuke17/rakudo,usev6/rakudo,Gnouc/rakudo,tony-o/rakudo,samcv/rakudo,tony-o/rakudo,labster/rakudo,samcv/rakudo,tbrowder/rakudo,raydiak/rakudo,tbrowder/rakudo,tony-o/rakudo,rakudo/rakudo,nbrown/rakudo,awwaiid/rakudo,Gnouc/rakudo,MasterDuke17/rakudo,MasterDuke17/rakudo,jonathanstowe/rakudo,samcv/rakudo,usev6/rakudo,jonathanstowe/rakudo,tbrowder/rakudo,awwaiid/rakudo,labster/rakudo,MasterDuke17/rakudo,salortiz/rakudo,nbrown/rakudo,softmoth/rakudo,rakudo/rakudo,raydiak/rakudo,salortiz/rakudo,rakudo/rakudo,salortiz/rakudo,usev6/rakudo,awwaiid/rakudo,jonathanstowe/rakudo,tbrowder/rakudo,tony-o/rakudo,Gnouc/rakudo,sjn/rakudo,Gnouc/rakudo,tony-o/rakudo,softmoth/rakudo,nbrown/rakudo,nbrown/rakudo,softmoth/rakudo,softmoth/rakudo,sjn/rakudo,Gnouc/rakudo,salortiz/rakudo,labster/rakudo,rakudo/rakudo,lucasbuchala/rakudo,samcv/rakudo,sjn/rakudo,lucasbuchala/rakudo,labster/rakudo,tbrowder/rakudo,jonathanstowe/rakudo,awwaiid/rakudo,salortiz/rakudo,lucasbuchala/rakudo,labster/rakudo,sjn/rakudo,nbrown/rakudo,lucasbuchala/rakudo,rakudo/rakudo,jonathanstowe/rakudo,salortiz/rakudo,samcv/rakudo,softmoth/rakudo,labster/rakudo,tbrowder/rakudo,awwaiid/rakudo,nbrown/rakudo,tony-o/rakudo,sjn/rakudo,rakudo/rakudo,usev6/rakudo,MasterDuke17/rakudo,lucasbuchala/rakudo,Gnouc/rakudo,usev6/rakudo,raydiak/rakudo