Spit up Run() between client and node, and allowed it to synchronously return errors when it makes sense.