Revert "Promises: Add AbstractPromise"

This reverts commit 1179f4e0a2a90ea275fe2bf773995534d962cbaa.

Reason for revert:

Findit (https://goo.gl/kROfz5) identified CL at revision 658119 as the
culprit for flakes in the build cycles as shown on:
https://analysis.chromium.org/p/chromium/flake-portal/analysis/culprit?key=ag9zfmZpbmRpdC1mb3ItbWVyQwsSDEZsYWtlQ3VscHJpdCIxY2hyb21pdW0vMTE3OWY0ZTBhMmE5MGVhMjc1ZmUyYmY3NzM5OTU1MzRkOTYyY2JhYQw

Sample Failed Build: https://ci.chromium.org/buildbot/chromium.memory/Linux%20TSan%20Tests/38186

Sample Failed Step: base_unittests

Sample Flaky Test: AbstractPromiseTest.MutipleThreadsAddingDependants

Original change's description:
> Promises: Add AbstractPromise
> 
> This is the internal promise representation. It implements the machinery
> needed to marshal and dispatch promises as they become ready for
> execution.
> 
> Care has been taken to try and minimize the size of the AbstractPromise
> class and to keep down the number of heap allocations. The promise result
> and the executor are both stored in the base::unique_any since they are
> never needed at the same time. The size of AbstractPromise on x64 is 96
> bytes in builds without DCHECKS.
> 
> In builds with DCHECKS it's larger because there's additional storage
> used to diagnose and prevent various usage hazards:
> 
> * Unhandled rejection
> * Double move of promise results to callbacks
> * Mixed move and non-move semantics of promise results to callbacks
> 
> The base::any_internal type has been adjusted so it can store the
> SmallUniqueObject<> inline, which is used to store the promise executor.
> The largest anticipated promise executor base::All is the size of
> 3x sizeof(void*) to hold a vtable and a std::vector.
> 
> Design: https://docs.google.com/document/d/1l12PAJgEtlrqTXKiw6mk2cR2jP7FAfCCDr-DGIdiC9w/edit
> 
> Bug: 906125
> Change-Id: I0c14e9138a11ef46b15848bcbb25ad21b0506f98
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1539981
> Commit-Queue: Alex Clarke <alexclarke@chromium.org>
> Reviewed-by: François Doray <fdoray@chromium.org>
> Reviewed-by: Etienne Pierre-Doray <etiennep@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#658119}


Change-Id: I112d519aa34ccf48576e5c0cdc55e21821412826
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 906125
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1603213
Cr-Commit-Position: refs/heads/master@{#658232}
17 files changed