definition of (semi)group (co)homology I'm puzzled why "group cohomology" contains terms 'group' (instead of 'semigroup') and 'cohomology' (instead oh 'homology and cohomology'). 
I'm new to the subject. Please inform me of any claims that are not true in the following:
Let $S$ be any unital semigroup (=monoid), $R$ a commutative unital ring, $R[S]$ its semigroup $R$-algebra. Let $B_n$ be the free $R[S]$-module on the set $(S\!\setminus\!\{1\})^n$; its basis elements are written $[s_1,\ldots,s_n]$ for given $s_1,\ldots,s_n\!\in\!S$, and let $[s_1,\ldots,s_n]\!=\!0$ when $s_i\!=\!1$ for some $i$. Define $\partial_n\!: B_n\!\rightarrow\!B_{n-1}$ by $$[s_1,\ldots,s_n]\mapsto s_1[s_2,\ldots,s_n]+\sum_{i=1}^{n-1}(-1)^i[s_1,\ldots,s_is_{i+1},\ldots,s_n]+(-1)^n[s_1,\ldots,s_{n-1}].$$
Define $\partial_0\!:R[S]\to R, \sum_ir_is_i\mapsto\sum_ir_i$. Then $\ldots\to B_n\overset{\partial_n}{\to}B_{n-1}\to\ldots\to B_0\overset{\partial_0}{\to}R\to0$ is an exact sequence of left $R[S]$-modules (a free resolution of the $R[S]$-module $R$), denoted by $B_\ast(S;R)$. 
For a right $R[S]$-module $M$, the homology of $S$ is the homology of the chain $\mathbb{Z}$-complex $M\otimes_RB_\ast(S;R)$, which is precisely $Tor^{R[S]}_\ast(R,M)$.
For a left $R[S]$-module $M$, the cohomology of $S$ is the cohomology of the chain $\mathbb{Z}$-complex $Hom_{R[S]}(B_\ast(S;R),M)$, which is precisely $Ext_{R[S]}^\ast(R,M)$.
Every semigroup homomorphism $f\!:S\to S'$ induces a chain map $B_\ast(S;R)\to B_\ast(S',R)$ that sends $[s_1,\ldots,s_n]\mapsto [f(s_1),\ldots,f(s_n)]$, and this construction is functorial. 
Q1: Where in this construction are inverses of elements of $S$ needed? 
Q2: Why did we take elements $s\in S\!\setminus\!\{1\}$? 
Q3: Is the standard way (to show that for a homology theory $H_\ast$ on objects $O,O'$ we have $O\cong O'\Rightarrow H_\ast(O)\cong H_\ast(O')$) done by proving that every morphism $f:O\to O'$ induces chain maps on resolutions in a functorial manner?
 A: One doesn't need inverses to construct the cohomology of groups. In fact, the construction of the semigroup ring $\mathbb{Z}S$ for a semigroup $S$ still makes sense so semigoup cohomology is again is just the derived functors $H^*(S,A) := \mathrm{Ext}^*_{\mathbb{Z}S}(\mathbb{Z},A)$, or one can use bar resolutions like you did; the same works for homology. One does need inverses to do as many useful things with it, which might explain why group (co)homology is more popular. It could be an interesting exercise for you to see which theorems generalise.
There are even other types of semigroup cohomology and some people are interested in it. You might try and consult (Novikov, Boris V. "Semigroups of cohomological dimension one." Journal of Algebra 204.2 (1998): 386-393.) for a flavour of the field. 
In answer to your question on why we don't consider 1 in the normalised complex: it turns out it is a general fact that given any simplicial object in an abelian category like the category of modules, one can form a normalised resolution that carries the same homological information as the unnormalised complex. In fact, Section 8.3 of Weibel's "Introduction to Homological Algbera" shows why a normalised complex is all you need in this general situation, and in group (co)homology it turns out that the usual normalised complex is what you get out of this. I strongly encourage you to read Ch. 8 of this book, which sheds light on many seemingly ad-hoc constructions in homological algebra.
