This patch implements P0674R1. It might be a bit rough around the edges, but I wanted to get it out so it can be reviewed and I can make changes to it as I straighten out the last few parts.
The main changes are how __shared_ptr_pointer deallocates itself and (obviously) the added overloads.
- Relevant section of the standard.
- Paper.
- Based on D62259.
Thanks for the help @mclow.lists and @EricWF