Make sure runtime fails if more inputs are provided than a pipeline accepts

It seems runtime does not fail if you provide more inputs to the pipeline than a pipeline accepts. Not sure why this happens. We should check if this is on purpose, but I cannot see the reason for this now. So I think it is a bug and we should fix it and add a test for it.

I know that we allow subpipelines that not all outputs are used. But all inputs should always be provided and just the inputs and not more inputs.