New util/async implementation

Also deprecating `util/protochain`