Expose some internal state

Exposes state and value (using Symbols when available)
for some extra speed in the case of nested promises.
Use our newly gained powers to collapse deeply nested promises.