Timelocks are not detected
**Describe the bug**
In some cases the CLI doesn't detect the expired cancel/refund timelock.

As a result:
1. It doesn't automatically cancel & refund a swap when it needs to. 
2. It doesn't detect when the swap has been punished. The swap can therefore never be completed
3. Mysterious errors are thrown `Error: Internal error: canceled state reached before cancel timelock was expired`

**Lost/trapped Funds**
Yes

**Debug logs**
```
{"timestamp":"Apr 23 18:33:07.806","level":"DEBUG","fields":{"message":"Using existing sqlite database."}}
{"timestamp":"Apr 23 18:33:07.811","level":"DEBUG","fields":{"message":"Reading in seed from /Users/***/Library/Application Support/xmr-btc-swap/cli/testnet/seed.pem"}}
{"timestamp":"Apr 23 18:33:09.841","level":"DEBUG","fields":{"message":"Starting monero-wallet-rpc","port":"49394"}}
{"timestamp":"Apr 23 18:33:13.679","level":"DEBUG","fields":{"message":"Opened Monero wallet","monero_wallet_name":"swap-tool-blockchain-monitoring-wallet"}}
{"timestamp":"Apr 23 18:33:14.906","level":"DEBUG","fields":{"message":"Network layer initialized","peer_id":"12D3KooWSQLCbtoDWAQzo11JwKmsp3EXfVygZDv7sgdu6sns65tQ"}}
{"timestamp":"Apr 23 18:33:14.907","level":"DEBUG","fields":{"message":"Requesting quote"}}
{"timestamp":"Apr 23 18:33:15.029","level":"INFO","fields":{"message":"Connected to Alice at /dns4/asb.unstoppableswap.net/tcp/9939/p2p/12D3KooWJS3D2aN2Y4MNbDm66jCfkUSVpqW1u2TdURSqriny2CfX"}}
{"timestamp":"Apr 23 18:33:15.081","level":"INFO","fields":{"message":"Received quote","price":"0.00710532 BTC","minimum_amount":"0.00010000 BTC","maximum_amount":"0.05609442 BTC"}}
{"timestamp":"Apr 23 18:33:15.087","level":"INFO","fields":{"message":"Waiting for Bitcoin deposit","deposit_address":"tb1q9vkqzanhjg9jhvj8cnkd38mw8k8q0cj6eplk00","max_giveable":"0.00000000 BTC","minimum_amount":"0.00010000 BTC","maximum_amount":"0.05609442 BTC"}}
{"timestamp":"Apr 23 18:33:34.702","level":"INFO","fields":{"message":"Received Bitcoin","new_balance":"0.00012000 BTC","max_giveable":"0.00011878 BTC"}}
{"timestamp":"Apr 23 18:33:34.703","level":"INFO","fields":{"message":"Determined swap amount","amount":"0.00011878 BTC","fees":"0.00000122 BTC"}}
{"timestamp":"Apr 23 18:33:34.707","level":"DEBUG","fields":{"message":"Advancing state","state":"quote has been requested"}}
{"timestamp":"Apr 23 18:33:34.969","level":"DEBUG","fields":{"message":"Estimated fee for transaction","weight":"548","fee_rate":"1","sats_per_vbyte":"137.0"}}
{"timestamp":"Apr 23 18:33:34.970","level":"WARN","fields":{"message":"Estimated fee of 137.0 is smaller than the min relay fee, defaulting to min relay fee 1000"}}
{"timestamp":"Apr 23 18:33:35.214","level":"DEBUG","fields":{"message":"Estimated fee for transaction","weight":"596","fee_rate":"1","sats_per_vbyte":"149.0"}}
{"timestamp":"Apr 23 18:33:35.214","level":"WARN","fields":{"message":"Estimated fee of 149.0 is smaller than the min relay fee, defaulting to min relay fee 1000"}}
{"timestamp":"Apr 23 18:33:42.545","level":"INFO","fields":{"message":"Starting new swap","swap_id":"9e303315-0805-48b4-a874-cf865af6a85b"}}
{"timestamp":"Apr 23 18:33:42.555","level":"DEBUG","fields":{"message":"Advancing state","state":"execution setup done"}}
{"timestamp":"Apr 23 18:33:42.703","level":"INFO","fields":{"message":"Published Bitcoin transaction","txid":"1bddff1ab45e61a3285c712da51e40d71c217499be37cf39ecdadca5d9fc9220","kind":"lock"}}
{"timestamp":"Apr 23 18:33:42.707","level":"DEBUG","fields":{"message":"Advancing state","state":"btc is locked"}}
{"timestamp":"Apr 23 18:33:42.712","level":"INFO","fields":{"message":"Waiting for Alice to lock Monero"}}
{"timestamp":"Apr 23 18:33:47.578","level":"DEBUG","fields":{"message":"Found relevant Bitcoin transaction","txid":"1bddff1ab45e61a3285c712da51e40d71c217499be37cf39ecdadca5d9fc9220","status":"unseen"}}
{"timestamp":"Jul 22 15:37:53.068","level":"DEBUG","fields":{"message":"Reading in seed from /Users/***/Library/Application Support/xmr-btc-swap/cli/testnet/seed.pem"}}
{"timestamp":"Jul 26 14:28:44.779","level":"DEBUG","fields":{"message":"Using existing sqlite database."}}
{"timestamp":"Jul 26 14:28:44.783","level":"DEBUG","fields":{"message":"Reading in seed from /Users/***/Library/Application Support/xmr-btc-swap/cli/testnet/seed.pem"}}
{"timestamp":"Jul 26 14:28:46.631","level":"DEBUG","fields":{"message":"Starting monero-wallet-rpc","port":"54637"}}
{"timestamp":"Jul 26 14:28:50.108","level":"DEBUG","fields":{"message":"Opened Monero wallet","monero_wallet_name":"swap-tool-blockchain-monitoring-wallet"}}
{"timestamp":"Jul 26 14:28:51.185","level":"DEBUG","fields":{"message":"Network layer initialized","peer_id":"12D3KooWSQLCbtoDWAQzo11JwKmsp3EXfVygZDv7sgdu6sns65tQ"}}
{"timestamp":"Jul 26 14:28:51.186","level":"DEBUG","fields":{"message":"Advancing state","state":"btc is cancelled"}}
{"timestamp":"Jul 26 14:41:20.260","level":"DEBUG","fields":{"message":"Using existing sqlite database."}}
{"timestamp":"Jul 26 14:41:20.264","level":"DEBUG","fields":{"message":"Reading in seed from /Users/***/Library/Application Support/xmr-btc-swap/cli/testnet/seed.pem"}}
{"timestamp":"Jul 26 14:41:22.252","level":"INFO","fields":{"message":"Manually cancelling swap","swap_id":"9e303315-0805-48b4-a874-cf865af6a85b"}}
{"timestamp":"Jul 26 14:41:23.796","level":"DEBUG","fields":{"message":"Using existing sqlite database."}}
{"timestamp":"Jul 26 14:41:23.799","level":"DEBUG","fields":{"message":"Reading in seed from /Users/***/Library/Application Support/xmr-btc-swap/cli/testnet/seed.pem"}}
{"timestamp":"Jul 26 14:42:20.773","level":"DEBUG","fields":{"message":"Using existing sqlite database."}}
{"timestamp":"Jul 26 14:42:20.776","level":"DEBUG","fields":{"message":"Reading in seed from /Users/***/Library/Application Support/xmr-btc-swap/cli/testnet/seed.pem"}}
{"timestamp":"Jul 26 14:42:22.729","level":"DEBUG","fields":{"message":"Starting monero-wallet-rpc","port":"54770"}}
{"timestamp":"Jul 26 14:42:26.968","level":"DEBUG","fields":{"message":"Opened Monero wallet","monero_wallet_name":"swap-tool-blockchain-monitoring-wallet"}}
{"timestamp":"Jul 26 14:42:28.041","level":"DEBUG","fields":{"message":"Network layer initialized","peer_id":"12D3KooWSQLCbtoDWAQzo11JwKmsp3EXfVygZDv7sgdu6sns65tQ"}}
{"timestamp":"Jul 26 14:42:28.043","level":"DEBUG","fields":{"message":"Advancing state","state":"btc is cancelled"}}
{"timestamp":"2022-07-26 15:07:16","level":"DEBUG","fields":{"message":"Using existing sqlite database."}}
{"timestamp":"2022-07-26 15:07:16","level":"DEBUG","fields":{"message":"Reading in seed from /Users/***/Library/Application Support/xmr-btc-swap/cli/testnet/seed.pem"}}
{"timestamp":"2022-07-26 15:07:18","level":"DEBUG","fields":{"message":"Starting monero-wallet-rpc","port":"54924"}}
{"timestamp":"2022-07-26 15:07:21","level":"DEBUG","fields":{"message":"Opened Monero wallet","monero_wallet_name":"swap-tool-blockchain-monitoring-wallet"}}
{"timestamp":"2022-07-26 15:07:22","level":"DEBUG","fields":{"message":"Network layer initialized","peer_id":"12D3KooWSQLCbtoDWAQzo11JwKmsp3EXfVygZDv7sgdu6sns65tQ"}}
{"timestamp":"2022-07-26 15:07:22","level":"DEBUG","fields":{"message":"Advancing state","state":"btc is cancelled"}}
Error: Internal error: canceled state reached before cancel timelock was expired

```

**Platform (please complete the following information):**

- CLI (master)