lnwallet: fix bug that makes commitment transaction unspendable
lnwallet: fix bug that makes commitment transaction unspendable

Introduce TimelockShift which is used to make sure the commitment
transaction is spendable by setting the locktime with it so that
it is larger than 500,000,000, thus interpreting it as Unix epoch
timestamp and not a block height. It is also smaller than the current
timestamp which has bit (1 << 30) set, so there is no risk of having
the commitment transaction be rejected. This way we can safely use
the lower 24 bits of the locktime field for part of the obscured
commitment transaction number.

ddustin/lnd,ddustin/lnd,LightningNetwork/lnd,AndrewSamokhvalov/lnd,LightningNetwork/lnd,AndrewSamokhvalov/lnd,aakselrod/lnd,aakselrod/lnd