Remove timeout logic for pending requests

Rather than firing-and-forgetting add and remove requests, we
block on receiving an acknowledgement that the cluster manager
has received our request. This allows us to safely reason about
whether to keep track of pending requests instead of potentially
double counting requests by timing out old ones.