Remove kew Contexts from shepherd

They have unclear semantics and moving to asynchronous promise execution has
been causing a number of issues.  This is clearer and safer code.