Followup to SI-8689 deprecates `completeWith`, recommends `tryCompleteWith`

Given that there's no one to report a failed (benign) race condition between
multiple completers for a `Promise`, this commit deprecates `completeWith`
in favor of `tryCompleteWith`, which more accurately describes potential
conflicts.

This commit also adds an optimization to `tryCompleteWith` for
`DefaultPromise` which uses the "root linking" feature to link a yet
uncompleted `Promise` to the `Promise` which is desired to complete this
`Promise` with.