How is the existence of several different morphisms between two objects generalized in therms of the axioms of cathegory theory. TL;DR I was confused: I viewed  commutative diagrams in therms of objects, while in reality they express relationships between morphisms.
According to the axioms of category theory, all we need to define a category are objects and morphisms. 
My question is under this terms, shouldn't all morphisms with the same domain and codomain be identical?
More formally, let A and B be objects in any category and let f and g be morphism that convert A to B.
  f: A -> B
  g: A -> B
Shouldn't the diagram that displays these objects and morphisms commute for all A, B, x and y? 
What is the reason it doesn't and how is all this expressed in category theory therms?
If we are operating in the category of sets, f and g aren't equal because the mapping between individual elements of the set A to elements of the set B in the two cases is not equivalent. But how is all this expressed in category theory therms?
 A: For any two objects $A$ and $B$ in your category, you are given a set $Hom(A,B)$ of morphisms bewteen $A$ and $B$. There is absolutely no reason why two morphisms with the same domain and codomain should be equal.
For instance, in the category of sets, $Hom(A,B)$ is the set of functions between $A$ and $B$, and of course except in very special cases, there are many many functions between two sets.
Actually, there is a name for a category where morphisms are determined by their domain and codomain : it's called a preorder.
From the point of view of category theory, the fact that in the category of sets morphisms are functions and can be evaluated at elements is irrelevant (that's not completely true but it's true enough). For a category theorist, two functions are not equal iff they give the same image for every element ; they are equal if... they are equal.
Let me be more precise : as I mentioned before, for any objects you are given a set of morphisms $Hom(A,B)$. Like in any set, you can decide equality of elements : if $f,g\in Hom(A,B)$ it makes sense to say that $f=g$ or $f\neq g$. And that is part of the category structure. Equality of morphisms is hardcoded in the structure, if you want (but this is true for elements of any set).
Now if $f,f':A\to B$ and $g,g':B\to C$ are morphisms, you may or may not have $g\circ f = g'\circ f'$. The fact that this equality holds or not is a judgement that has to be taken in the habitual sense of equality of objects. Like you don't have to wonder too hard what it means that $2\neq 3$ : they are just two different objects in the set $\mathbb{N}$.
Category theory is really combinatorics : arrows don't have to make sense as "functions" or whatever, even though in most usual cases they do. That's why we sometimes call them "arrows". A category is like an oriented graph with a little extra structure (composition), and equality of morphisms has to be interpreted as equality of two edges in a graph. It doesn't have to mean anything : two edges may or may not be the same, and that's it.
