The solutions posted above can't be what H&K had in mind since they do not use the double dual. I came up with the following solution.
Let $s\in S$. We first show that the function \begin{alignat*}{1} \phi_s:&W\rightarrow F\\ &w\mapsto w(s) \end{alignat*} is a linear functional on $W$ (in other words for each $s$, we have $\phi_s\in W^*$).
Let $w_1,w_2\in W$, $c\in F$. Then $\phi_s(cw_1+w_2)=(cw_1+w_2)(s)$ which by definition equals $cw_1(s)+w_2(s)$ which equals $c\phi_s(w_1)+\phi_s(w_2)$. Thus $\phi_s$ is a linear functional on $W$.
Suppose $\phi_s(w)=0$ for all $s\in S$, $w\in W$. Then $w(s)=0$ $\forall$ $s\in S$, $w\in W$, which implies $\dim(W)=0$. So as long as $n>0$, $\exists$ $s_1\in S$ such that $\phi_{s_1}(w)\not=0$ for some $w\in W$. Equivalently there is an $s_1\in S$ and a $w_1\in W$ such that $w_1(s_1)\not=0$. This means $\phi_{s_1}\not=0$ as elements of $W^*$. It follows that $\langle\phi_{s_1}\rangle$, the subspace of $W^*$ generated by $\phi_{s_1}$, has dimension one. By scaling if necessary, we can further assume $w_1(s_1)=1$.
Now suppose $\forall$ $s\in S$ that we have $\phi_s\in\langle\phi_{s_1}\rangle$, the subspace of $W^*$ generated by $\phi_{s_1}$. Then for each $s\in S$ there is a $c(s)\in F$ such that $\phi_s=c(s)\phi_{s_1}$ in $W^*$. Then for each $s\in S$, $w(s)=c(s)w(s_1)$ for all $w\in W$. In particular $w_1(s)=c(s)$ (recall $w_1(s_1)=1$). Let $w\in W$. Let $b=w(s_1)$. Then $w(s)=c(s)w(s_1)=bw_1(s)$ $\forall$ $s\in S$. Notice that $b$ depends on $w$ but does not depend on $s$. Thus $w=bw_1$ as functions on $S$ where $b\in F$ is a fixed constant. Thus $w\in\langle w_1\rangle$, the subspace of $W$ generated by $w_1$. Since $w$ was arbitrary, it follows that $\dim(W)=1$. Thus as long as $\dim(W)\geq 2$ we can find $w_2\in W$ and $s_2\in S$ such that $\langle w_1,w_2\rangle$ (the subspace of $W$ generated by $w_1,w_2$) and $\langle\phi_{s_1},\phi_{s_2}\rangle$ (the subspace of $W^*$ generated by $\{\phi_{s_1},\phi_{s_2}\}$) both have dimension two. Let $W_0=\langle w_1,w_2\rangle$. Then we've shown that $\{\phi_{s_1},\phi_{s_2}\}$ is a basis for $W_0^*$. Therefore there's a dual basis $\{F_1,F_2\}\subseteq W_0^{**}$; so that $F_i(\phi_{s_j})=\delta_{ij}$, $i,j\in\{1,2\}$. By Theorem 17, $\exists$ corresponding $w_1,w_2\in W$ so that $F_i=L_{w_i}$ (in the notation of Theorem 17). Therefore, $\delta_{ij}=F_i(\phi_{s_j})=L_{w_i}(\phi_{s_j})=\phi_{s_j}(w_i)=w_i(s_j)$, for $i,j\in\{1,2\}$.
Now suppose $\forall$ $s\in S$ that we have $\phi_s\in\langle\phi_{s_1},\phi_{s_2}\rangle\subseteq W^{*}$. Then $\forall$ $s\in S$, there are constants $c_1(s),c_2(s)\in F$ and we have $w(s)=c_1(s)w(s_1)+c_2(s)w(s_2)$ for all $w\in W$. Similar to the argument in the previous paragraph, this implies $\dim(W)\leq 2$ (for $w\in W$ let $b_1=w(s_1)$ and $b_2=w(s_2)$ and argue as before). Therefore, as long as $\dim(W)\geq3$ we can find $s_3$ so that $\langle\phi_{s_1},\phi_{s_2},\phi_{s_3}\rangle\subseteq W^*$, the subspace of $W^*$ generated by $\phi_{s_1},\phi_{s_2},\phi_{s_3}$, has dimension three. And as before we can find $w_3\in W$ such that $w_i(s_j)=\delta_{ij}$, for $i,j\in\{1,2,3\}$.
Continuing in this way we can find $n$ elements $s_1,\dots,s_n\in S$ such that $\phi_{s_1},\dots,\phi_{s_n}$ are linearly independent in $W^{*}$ and corresponding elements $w_1,\dots,w_n\in W$ such that $w_i(s_j)=\delta_{i,j}$. Let $f_i=w_i$ and we are done.