Made Plug::acceptsInput() consider current output connections.

A plug will now never accept an input if any of its immediate outputs would not themselves accept the same connection directly. This allows the RenderManShader node to accept connections to Boxes without them being used a loophole to bypass the usual connection checks for coshaders.

Fixes #532.
Merge pull request #552 from johnhaddon/acceptsInputConsideringOutputs

Made Plug::acceptsInput() consider current output connections.