Merge bitcoindevkit/bdk#2056: fix(core) `Checkpoint::drop` memory leak
0bd93dad114b90c3f08df9cc892625e250edb718 fix(core): Memory leak bugs in `CheckPoint::drop` impl (志宇)
Pull request description:
based on #1997, depends on #2055
### Description
Fix memory leak bug in CheckPoint::drop by using Arc::into_inner.
Add tests (from the old PR) for memory leak + stack overflow when dropping CheckPoint.
### Notes to the reviewers
It should be merged after #2055.
### Changelog notice
```
### Fix:
- Fix memory leak bug in CheckPoint::drop by using `Arc::into_inner`.
```
### Checklists
#### All Submissions:
* [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
#### Bugfixes:
* [x] This pull request breaks the existing API
* [x] I've added tests to reproduce the issue which are now passing
* [x] I'm linking the issue being fixed by this PR
ACKs for top commit:
evanlinjin:
ACK
0bd93dad114b90c3f08df9cc892625e250edb718
Tree-SHA512: f61bd7ee19a6eb4e0f0275882d8c7b9f0e050e868e1e7a51b4089c8c71d14478905d900c619bebe71e4ffe7117400d99e4604d6a16e3b9a7515755d3f3250c90