htlcswitch: properly convert multi-hop malformed HTLC failures
htlcswitch: properly convert multi-hop malformed HTLC failures

In this commit, we now properly convert multi-hop malformed HTLC
failures. Before this commit, we wouldn't properly add a layer of
encryption to these errors meaning that the destination would fail to
decrypt the error as it was actually plaintext.

To remedy this, we'll now check if we need to convert an error, and if
so we'll encrypt it as if it we were the source of the error (the true
source is our direct channel peer).

LightningNetwork/lnd,aakselrod/lnd,aakselrod/lnd,LightningNetwork/lnd