Graphpher adaptor networks fixes

I've got a new system for viewing coshader outputs in Graphpher, which involves creating little adaptor networks to convert different coshaders into surface shaders, and putting 'em in boxes. This has thrown up a couple of problems (connecting shaders to plugs on boxes, and shader parameter hash propogation through box connections), which I'm addressing here