The Picard group of $X$ is the set of divisor class group elements that map to 0 in $\bigoplus\mathrm{Cl}(\mathcal{\hat{O}}_{X,p_i})$. In other words, it is the set of divisors on $X$ whose restriction to each local ring $\mathcal{O}_{X,p_i}$ is principal.
Since the torsion subgroup of $\mathrm{Cl}(X)$ maps injectively into $\bigoplus\mathrm{Cl}(\mathcal{\hat{O}}_{X,p_i})$, we know that the torsion subgroup of $\mathrm{Pic}(X)$ is trivial. Therefore, $\mathrm{Pic}(X)$ is a free abelian group with basis given by the restriction of any set of generators for $\mathrm{Cl}(X)$ to $X$.
Now we just need to find a set of generators for $\mathrm{Cl}(X)$. We know that the map $\mathrm{Cl}(X)\to\bigoplus\mathrm{Cl}(\mathcal{\hat{O}}_{X,p_i})$ is surjective, so it suffices to find a set of generators for each $\mathrm{Cl}(\mathcal{\hat{O}}_{X,p_i})$.
At the nonsingular points $p_1, p_2, p_3$, we have $\mathrm{Cl}(\mathcal{\hat{O}}_{X,p_i})\cong\mathbb{Z}$, so any element of $\mathrm{Cl}(X)$ whose restriction to each of these points is principal will generate $\mathrm{Cl}(X)$.
At the singular point $p_4$, we have $\mathrm{Cl}(\mathcal{\hat{O}}_{X,p_4})\cong\mathbb{Z}\oplus\mathbb{Z}/3\mathbb{Z}$, so we need to find an element of $\mathrm{Cl}(X)$ whose restriction to $p_4$ is principal and has order 3.
It turns out that the divisor class of the line $y=0$ has this property. To see this, note that the local equation for $X$ at $p_4$ is $z^3=x(x-1)$, so a generator for $\mathrm{Cl}(\mathcal{\hat{O}}_{X,p_4})$ is given by the restriction of the divisor class of the line $x=0$. The restriction of the divisor class of the line $y=0$ to $\mathcal{\hat{O}}_{X,p_4}$ is then $(1/3)(0,0,1)-(1/3)(0,0,-1)=0$, so it is principal.
Now we just need to check that the divisor class of the line $y=0$ has order 3 in $\mathrm{Cl}(X)$. To do this, note that the local equation for $X$ at the origin is $z^3=y^2(x-1)$, so a generator for $\mathrm{Cl}(\mathcal{\hat{O}}_{X,0})$ is given by the restriction of the divisor class of the line $x=1$. The restriction of the divisor class of the line $y=0$ to $\mathcal{\hat{O}}_{X,0}$ is then $(1/3)(0,1,1)-(1/3)(0,-1,1)=0$, so it is principal.
Therefore, the divisor class of the line $y=0$ generates $\mathrm{Cl}(X)$, and the Picard group of $X$ is the free abelian group with basis given by the restriction of this divisor class to $X$.
Regarding the question about what type of sheaves are under consideration, the answer is coherent sheaves. The corresponding algebra concepts are from the theory of finitely generated modules over Noetherian rings (and especially, from the theory of depth and related concepts).
As noted in comments, the property of reflexivity implying local freeness is special to surfaces. On a variety, a reflexive sheaf will be $S_2$ (where $S_n$ are the depth conditions that appear in the definition of Cohen--Macaulay: on a $n$-dimensional variety, being Cohen--Macaulay is the same as being $S_n$).
A theorem of Auslander--Buchsbaum shows that on a smooth variety, a coherent sheaf that is Cohen--Macaulay is locally free. So for smooth surfaces, reflexive equals $S_2$ equals Cohen--Macaulay equals locally free.
If $X$ is a smooth three-fold, if $\mathcal I$ is the ideal sheaf of a point, and if $\mathcal K$ denotes the kernel of a surjection $\mathcal F \to \mathcal I$, with $\mathcal F$ locally free, then $\mathcal K$ is reflexive, i.e. $S_2$, but not locally free.
Incidentally, torsion-free is the same as $S_1$, and can be thought of geometrically as saying that the sheaf admits no non-zero sections whose support is a proper closed subvariety. (More generally, if you are on a variety or scheme that is allowed to be reducible, then the condition is that the support of a non-zero section should be a union of irreducible components.)
Regarding the use of rank in the non-locally free context:
the generic fibre of a torsion-free coherent sheaf is a finite rank vector space over the function field of $X$, and this is how its rank is defined.
Finally: I've found these notes of Karl Schwede helpful in the past when trying to think about this material.
Best Answer
If $L$ is torsion, then $L^k=O_X$ (tensor power). Since $X$ is K3 and because the first chern class of the trivial bundle vanishes, we have $c_1(X)=0$. Furthermore, since $X$ is regular, we get $h^1(O_X)=0$. Thus, $\chi(O_X)=2$.
Now the RRT says $$\chi(L)=\chi(O_X) + \tfrac 12 c_1(L)^2$$ Thus, $\chi(O_X)=\chi(L^k)=\chi(O_X)+\tfrac 12 c_1(L^k)^2$, so $c_1(L^k)^2=0$. By general chern polynomial lore, $c_1(L^k)=k\cdot c_1(L)$, so $c_1(L)^2=0$. But this means that $$h^0(L)-h^1(L)+h^2(L)=\chi(L) = \chi(O_X) = 2.$$ By Serre Duality, you have $H^2(X,L)\cong H^0(X,L^\ast)^\ast$. If $H^0(X,L^\ast)=H^0(X,L^{k-1})$ is nontrivial and $L\ne O_X$, then we'd be done since $H^0(X,L)$ would have to be non-trivial. Therefore, we may assume $h^2(L)=0$.
Putting this all together we get $h^0(L)=2+h^1(L)> 0$ as required.