Justifying taking the limit of a keyhole contour
In Stein's Complex Analysis book, he proves Cauchy's integral formula (and a few others) by use of a keyhole contour argument (see page 46). He does not explain why the integral of the limit path is limit of the of the integrals of the limiting paths (all of which are $0$), and I'm having trouble working it out myself.
We know that the integral over all the keyhole contours is $0$ when the length of the corridor of the contour is nonzero. I do not see why this implies that the integral of the limit path is $0$ (when the contour reduces to two circles, after the overlapping corridor segments cancel). My best guess is that he is using a theorem of the form "the limit of the integrals of a series of uniformly convergent functions is the integral of the limit function" (see Rudin's PMA, page 151), but obviously the circumstances are a bit different here because we are working with paths and he has not shown uniform convergence of the paths to the limit path.
Any help explaining this would be great, as would a reference to a textbook that works out this limit process in detail. Thanks!
I don't have that book, so forgive me if I don't address the specifics of Stein's argument. Thankfully, you have been detailed enough in describing your problem that I think I understand what the issue is. Here is a related and simplified toy problem that I think captures the essence of what you are asking. Maybe seeing this explained will help.
Fix a function $f: \mathbb{C} \to \mathbb{C}$ and assume it is analytic everywhere.
For $\theta \geq 0$, define the path $\gamma_{\theta}: [0,1] \to \mathbb{C}$ by $$ \gamma_{\theta}(t) = t e^{i\theta}, \qquad t \in [0,1], $$ (Thus $\gamma_{\theta}$ describes a straight line and constant speed path in the plane from $(0,0)$ to $e^{i \theta} = (\cos \theta, \sin \theta)$.)
I think the essence of your question is contained in understanding how under these circumstances it is true that $$ \lim_{\theta \to 0^{+}} \int_{\gamma_{\theta}} f(z) \, dz = \int_{\gamma_0} f(z) \, dz. $$ It is not necessary to think think about uniform convergence of a family of paths here--- you can certainly make sense of this as a concept, but it is not necessary to do so, and if Stein has not done so at that point in his text, it may be distracting to do so. All you need is the uniform continuity of $f$ on compact sets.
The idea is that if $\theta$ is very small the integral of $f$ over the line segment $\gamma_{\theta}$ involves only values of $f$ at points that are very close to values of $f$ at points on the line segment $\gamma_0$. From the uniform continuity of $f$ (on the closed unit disc, say, or really any compact set that contains a little wedge around $\gamma_0$), if we are given $\epsilon > 0$, we can ensure that the difference between a value of $f$ on any point on $\gamma_{\theta}$, and the corresponding value of $f$ on the closest point of $\gamma_0$, is smaller than $\epsilon$ by taking the line segments sufficiently close together. This will mean the two integrals will be at most $\epsilon$ apart if $\theta$ is sufficiently small, so the limit is what it is. This is just the intuition.
To be more specific: for any $\theta$, $$ \int_{\gamma_{\theta}} f(z) \, dz = \int_0^1 f(\gamma_{\theta}(t)) e^{i \theta} \, dt $$ So $$ \int_{\gamma_{\theta}} f(z) \, dz - \int_{\gamma_0} f(z) \, dz = \int_0^1 (f(\gamma_{\theta}(t)) e^{i \theta} - f(\gamma_0(t)) ) \, dt $$ Getting about halfway between intuition and proof now: if $\theta$ is very small then $e^{i\theta}$ will be very close to $1$, so this integrand will be very close to $f(\gamma_{\theta}(t)) - f(\gamma_0(t))$, which for any $t$ is a difference of values of $f$ at points less than $\theta$ apart (the two points lie on a circular arc of length $t\theta \leq \theta$). Since $f$ is uniformly continuous on the closed unit disc, given $\epsilon$, by choosing $\theta$ sufficiently small we can ensure the integrand is no greater than $\epsilon$, and hence the integral won't be either. This is basically a proof, with only some details missing.
The proof: for any $\theta$ you have $$ \begin{align} \left|\int_{\gamma_{\theta}} f(z) \, dz - \int_{\gamma_0} f(z) \, dz\right| & = \left|\int_0^1 (f(\gamma_{\theta}(t)) e^{i \theta} - f(\gamma_0(t)) ) \, dt \right| \\ & \leq \int_0^1 |f(\gamma_{\theta}(t)) e^{i \theta} - f(\gamma_0(t)) | dt \\ & \leq \int_0^1 |f(\gamma_{\theta}(t)) e^{i \theta} - f(\gamma_0(t)) e^{i\theta} + f(\gamma_0(t)) e^{i\theta} - f(\gamma_0(t)) | dt \\ & \leq \int_0^1 (|f(\gamma_{\theta}(t)) e^{i \theta} - f(\gamma_0(t)) e^{i\theta}| + |f(\gamma_0(t)) e^{i\theta} - f(\gamma_0(t)) |) dt \\ & \leq \int_0^1 (|f(\gamma_{\theta}(t)) - f(\gamma_0(t))| + |f(\gamma_0(t))| |e^{i\theta} - 1|) dt. \end{align} $$ So, given $\epsilon > 0$, use the continuity of $f(\gamma_0(t))$ on the compact set $[0,1]$ to find $M > 0$ with the property that $|f(\gamma_0(t))| < M$ for all $t \in [0,1]$, and use the continuity of $x \mapsto e^{ix}$ to find $\delta_1$ with the property that $|e^{i\theta} - 1| < \epsilon/(2M)$ whenever $0 < \theta < \delta_1$. It follows that whenever $0 < \theta < \delta_1$ one has $|f(\gamma_0(t))| |e^{i\theta} - 1| < \epsilon/2$ for all $t \in [0,1]$.
Use the uniform continuity of $f$ on the closed unit disc to find $\delta_2$ with the property that $|f(z) - f(w)| < \epsilon/2$ whenever $|z - w| < \delta_2$. It follows that if $0 < \theta < \delta_2$, one has $|\gamma_{\theta}(t) - \gamma_0(t)| \leq t \theta \leq \theta < \delta_2$ for all $t \in [0,1]$ and hence by choice of $\delta_2$ one has $|f(\gamma_{\theta}(t)) - f(\gamma_0(t))| < \epsilon/2$ for all $t \in [0,1]$.
You conclude that whenever $0 < \theta < \min(\delta_1, \delta_2)$ one has that the integrand above is at most $\epsilon/2 + \epsilon/2 = \epsilon$ and hence the integral itself is at most $\epsilon$ also. This shows from the definition that $\lim_{t \to 0^{+}} \int_{\gamma_{\theta}} f(z) \, dz = \int_{\gamma_0} f(z) \, dz$.
Note that only the uniform continuity of $f$ is used in making this work. (The analyticity is used when you want to actually evaluate those integrals.)
Anyway, exactly the same thing is happening in things like the "keyhole argument". The general idea is that the uniform continuity of $f$ on a neighborhood of a curve $C$ will ensure that the contour integrals of $f$ over sufficiently nice curves that "approach" $C$, will converge to the contour integral of $f$ over $C$ itself. Books don't bother to turn this general idea into a general theorem because the contours used in most arguments are simple enough (e.g. line segments, arcs of circles) that no general theorem is necessary.