pass references to upump for upipe_input

Also increments the reference count of source pipes when outputting packets.
This fixes an issue with rogue pointers if control commands are sent to the
source pipe from a probe, which change or release the pump.