Is this a valid way to think about sheafification? This all feels like it should be valid, but I just wanted to get more experienced eyes on it in case I've made a mistake.
Take a presheaf $\mathscr{F}$ on a topological space $X$. In order to be a sheaf, for any set of compatible functions $f_i \in \mathscr{F}(U_i)$, there needs to exist a unique gluing. So the sheafification $\mathscr{F}^+$ of $\mathscr{F}$ can be constructed by doing the "least amount of work" to make this happen. 
Intuitively, I feel like this should mean two things happen:
First, suppose more than one gluing exist. If $f$ and $g$ are both gluings of $\{f_i\}$, we have no natural way to decide on which to keep. The easiest thing to do is to equate all gluings, and require that $f=g$ in $\mathscr{F}^+$.
Second, if a gluing for $\{f_i\}$ does not exist, one is freely adjoined. This new section will not be equal to any old sections in $\mathscr{F}$. We can identify this new section with the collection $\{f_i\}$, perhaps even calling it by the name $[f_i]$. 
Doing this, we need to have the understanding that it's very likely another compatible family $\{g_j\}$ will exist which glues together to form the same section. If this is the case, we require $[f_i]=[g_j]$. 
But since no section existed previously, you need a rule to tell when two such compatible families of functions should glue to the same section. In general, they will be defined on different covers, and you need to take a common refinement $\{V_i\}$ of these covers. By pushing each $f_i$ and each $g_j$ through the restriction maps into the appropriate open sets in this refinement, you can compare them directly for equality. And if all the right $f_i$'s and $g_j$'s are equal, then $[f_i] = [g_j]$.
 A: That's more or less right. We divide out by the relation "Two sections $f, g$ on an open $U\subseteq X$ are equivalent iff there is some cover $U_i \subseteq U$ such that $f|_{U_i} = g|_{U_i}$ for all $i$" (which turns out to be an equivalence relation, and for any given $U$, the class $[0]$ turns out to be a subgroup / ideal if $\mathscr F$ is a presheaf of groups / rings, which means dividing out by it works out nicely). And we adjoin sections where there is a cover with compatible sections.
However, that's not the usual way to construct the associated sheaf. One usually lets $\mathscr F'$ be the sheaf given by $U\mapsto \prod_{x \in U}\mathscr F_x$ (which is a very big sheaf), and then $\mathscr F^+$ is set to be the subsheaf where for any section $f\in \mathscr F(U)$, there is some cover $U_i \subseteq U$ and sections $f_i \in \mathscr F(U_i)$ such that $f|{U_i} = f_i$. In other words, the subsheaf of $\mathscr F'$ that has some "local coherence".
For instance, say $\mathscr F$ is the presheaf over $\Bbb C$ (with standard topology) of analytic functions (this is actually a sheaf, but nevermind). Then $\mathscr F'$ is the sheaf where a section over some open $U$ is given by, for each point, a power series around that point with some positive radius of convergence. The sheaf $\mathscr F^+$ is the subsheaf consisting of those sections where neighbouring points have power series that comes from the same analytic function. We see that we are back with the usual sheaf of analytic functions.
