chanrestore: return error instead of nil if failed derivation
chanrestore: return error instead of nil if failed derivation

This commit fixes a bug in the openChannelShell function where,
instead of properly returning an error when failing to derive
the shachain root's private key, nil was returned instead. This
would lead to a panic as the channel shell was then referenced
further down in the callstack. An error is now properly returned.

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