bridge: More robust parsing of channel options

The parsing of channel options was quite haphazard, and didn't
detect bad types for values, etc. This is more verbose, but it's more
failure proof and produces better diagnostic messages.
bridge: Better diagnostics for file read/write failures

In the file read/replace channels, put some context in the messages
so we can have a clue as to what's causing it. Previously we had:

cockpit-bridge-Message: /tmp/.V3DRPX/foo: Bad file descriptor