a special case of the fundamental normality theorem for Riemann surfaces I am trying to prove the exercise 27.1 on page 213 from O. Forster's "Lectures on Riemann Surfaces." Please note that this is not homework, I am just trying the exercises.  The question is as follows:
Let $X$ be a Riemann surface and 
$$
f_n:X\to \mathbb{C}\setminus\{0,1\}\hspace{10pt} n\in \mathbb{N}
$$
be a sequence of holomorphic functions which do not take the values 0 and 1. Suppose that there is a point $x_0\in X$ such that the sequence $(f_n(x_0))_n$ converges to $c\in \mathbb{C}\setminus\{0,1\}$. Show that there is a subsequence $(f_{n_k})_k$ which converges uniformly on compact subsets of $X$ to a holomorphic function $X\to \mathbb{C}\setminus\{0,1\}$. 

Here is what I have tried: First off let $p:\widetilde{X}\to X$ be the universal covering of $X$ and $q:D\to \mathbb{C}\setminus\{0,1\}$ be the universal covering of $\mathbb{C}\setminus\{0,1\}$ where $D$ is the unit disk. We may assume that $\widetilde{X}$ is not biholomorphic to the Riemann sphere $\mathbb{C}_\infty$, for otherwise $X=\mathbb{C}_\infty$ and so each $f_n$ is a constant function, and then the statement is trivial. Under this assumption, $\widetilde{X}$ is biholomorphic to either $\mathbb{C}$ or to $D$. Fix a point $\widetilde{x}_0\in p^{-1}(x_0)$ and $\widetilde{c}\in q^{-1}(c)$. For each $n$ fix a $y_n\in q^{-1}(f_n(x_0))$, and we may assume for sufficiently large $n$ that these $y_n$ all lie in the same component as $\widetilde{c}$ in the preimage $q^{-1}(U)$ for some evenly covered neighborhood $U$ of $c$. Let $\widetilde{f}_n$ be the unique lift of $f_n\circ p$ such that $\widetilde{f}_n(\widetilde{x}_0)=y_n$, this can be done as $\widetilde{X}$ is simply connected. Then 
$$
\lim_n \widetilde{f}_n(\widetilde{x}_0)=\widetilde{c}.
$$
Since the codomain of each $\widetilde{f}_n$ is $D$, this sequence is uniformly bounded, and so by Montel's Theorem there is a subsequence $(\widetilde{f}_{n_k})_k$ which converge uniformly on compact subsets to a holomorphic function $\widetilde{f}:\widetilde{X}\to D$. 
Define a map $f:X\to \mathbb{C}\setminus\{0,1\}$ by $f(x) = q\circ \widetilde{f}(\widetilde{x})$ for any $\widetilde{x}\in p^{-1}(x)$. Using the fact that the deck group acts transitively on the fibers of a universal covering and that $\widetilde{f}_{n_k}\to \widetilde{f}$ pointwise, we see that this map $f$ is well-defined. Because $p$ and $q$ are local biholomorphisms, it follows that $f$ is also holomorphic, for it can be locally expressed as $q\circ \widetilde{f}\circ p^{-1}$. 

Now I want to show that $f_{n_k}$ converges to $f$ uniformly on compact subsets. However, I am having a difficult time showing this. I think that I am partially on the right track, but it looks to me that I haven't used in any serious way the hypothesis that $(f_n(x_0))_n$ converges to some $c\in \mathbb{C}\setminus\{0,1\}$. I would really appreciate any ideas or hints. I also appreciate any identifications of holes or gaps in my argument. Thanks!
 A: If I understand your argument correctly, there are two things left for you to prove. 
First, you want to show that the fact that $\tilde{f}_{n_k}\to \tilde{f}$ locally uniformly implies that $f_{n_k}\to f$ locally uniformly, which I think is the easy part here. 
Second, you want to show that $f$ does not take the value $0$ or $1$. This is where the hypothesis $f_n(x_0)\to c\neq 0,1$ comes in. It follows from the Hurwitz Theorem that, since none of the $f_n$ take on the values $0$, $1$, then any limit $f$ is either $\equiv 0$, $\equiv 1$, or does not take the value $0$ or $1$. Since $f_n(x_0)\to c\neq 0,1$, the first two possibilities cannot happen, which proves that $f$ cannot take the values $0$ or $1$.
Edit:
To address step one (as per your first comment):
Let $U$ be an evenly covered neighborhood of $X$, and let $\tilde{U}$ be a component of $p^{-1}(U)$. Let $K\subset U$ be compact, and $\tilde{K}\subset\tilde{U}$ the subset lying over $K$. This $\tilde{K}$ is compact, so the sequence $\tilde{f}^n$ converges uniformly to $\tilde{f}$ on $\tilde{K}$ by what you have proved in the statement of your question. In particular, for large $n$, the image of $\tilde{f}^n(\tilde{K})$ is close to $\tilde{f}(\tilde{K})$, which implies: there is a radius $0<r<1$ such that $\tilde{f}^n(\tilde{K})$ lies in the disk $D(0,r)\subset \mathbb{D}$ for all $n$ sufficiently large. 
The derivative of $q$ is bounded in modulus on $D(0,r)$, say $|q'(z)|\leq M$ if $|z|<r$. Thus for any point $z\in \tilde{K}$, if $n$ is large enough you have $\|q\tilde{f}^n(z) - q\tilde{f}(z)\| \leq M\|\tilde{f}^n(z) - \tilde{f}(z)\|\to 0$ uniformly in $z\in \tilde{K}$.
(As a side note, since $\mathbb{D}$ and $\mathbb{C}\smallsetminus\{0,1\}$ are hyperbolic, if you use the hyperbolic metric then in fact $q$ is a contraction, so that $\|q\tilde{f}^n(z) -q\tilde{f}(z)\|_{hyp}\leq \|\tilde{f}^n(z) - \tilde{f}(z)\|_{hyp}$. )
