A (small) category is a perfectly valid algebraic structure like Groups, Rings, vector spaces, groupoids etc. So on a topological space or more generally on a site, it makes perfectly sense to consider sheaves that have values in categories.
Clearly, one did something not so smart here, because the category of (small) categories is in fact a 2-category, and one ignored this fact by having the sheaf take values in the category of categories.
This must have been the reason why people invented stacks - to have the right geometric/algebraic object that takes this fact into account. However, I am totally unclear how the axioms in the definition of a stack actually resemble this fact. So I am looking for a clarification of the exact difference of a sheaf with values in categories to a stack.
Please complete the following sentences, if possible:
A stack is a sheaf valued in categories plus the following extra structure...
/
A stack is a sheaf valued in categories except that one replaces the axiom X with the following weaker version...
/
A sheaf valued in categories is a stack with the following additional property...
/
etc.