How do I get the correct long exact sequence for relative group cohomology in terms of derived functors? Background:
I want to consider relative group cohomology: the construction is as follows.  I have a subgroup $H\subseteq G$ (and note that I don't want to assume that $H$ is normal in $G$), and a $\mathbb Z[G]$-module $M$.  Then we have the standard chain complxes $C^\ast(G;M)$ and $C^\ast(H,M)$, and there is a natural morphism $C^\ast(G,M)\to C^\ast(H,M)$, which induces the "restriction homomorphism" on group cohomology $\operatorname{res}:H^\ast(G,M)\to H^\ast(H,M)$.  Let us define the "relative group cohomology" as the cohomology of the chain complex which fits into the exact sequence:
$$
0\to C^\ast(G,H;M)\to C^\ast(G;M)\to C^\ast(H;M)\to 0
$$
(i.e. $C^\ast(G,H;M)$ is defined to be the kernel of the second map).  I haven't ever heard of these "relative group cohomology" groups, but it seems like a very natural idea to me, and what I'm trying to do is define algebraically the cellular cohomology groups $H^\ast(K(G,1),K(H,1);M)$ (in case we have a $K(H,1)$ which is naturally a subcomplex of a $K(G,1)$).  If anyone has a good reference for these I'd like to know!  Note that by definition, the relative group cohomology groups $H^\ast(G,H;M)$ fit into a natural long exact sequence:
$$
\cdots\to H^\ast(G,H;M)\to H^\ast(G;M)\to H^\ast(H;M)\to\cdots
$$
and this is what one would expect the cellular cohomology groups $H^\ast(K(G,1),K(H,1);M)$ to satisfy.  If I've messed this construction up, please tell me.
Question:
How do I understand the relative group cohomology in terms of derived functors?  We know that $H^\ast(G;M)=\operatorname{Ext}^\ast_{\mathbb Z[G]}(\mathbb Z,M)$ and $H^\ast(H;M)=\operatorname{Ext}^\ast_{\mathbb Z[H]}(\mathbb Z,M)$.  But since these are $\operatorname{Ext}$'s in different categories, it doesn't seem clear how to fit a third into the exact sequence.  What I'd like is some $\operatorname{Ext}$ definition of the relative group cohomology groups I've defined above.
More Info:
I've tried the following, but it seems to give the "wrong" answer.  We can get everything into the same category by observing that $M^H=\operatorname{Hom}_{\mathbb Z[G]}(\mathbb Z[G/H],M)$, and thus the cohomology is given by $H^\ast(H;M)=\operatorname{Ext}^\ast(\mathbb Z[G/H],M)$ (from now on, all $\operatorname{Ext}$'s are in the category of $\mathbb Z[G]$-modules).  Furthermore (and correct me if I am wrong), the restriction homomorphism $H^\ast(G,M)\to H^\ast(H,M)$ is induced by the "sum coefficients" morphism $\mathbb Z[G/H]\to\mathbb Z$ (giving the map $\operatorname{Ext}^\ast(\mathbb Z,M)\to\operatorname{Ext}^\ast(\mathbb Z[G/H],M)$).  So, now it looks like we get what we want, but now comes a surprise.  The "first argument"s of the $\operatorname{Ext}$'s fit into a short exact sequence:
$$
0\to\ker\to\mathbb Z[G/H]\to\mathbb Z\to 0
$$
and thus we have a long exact sequence of $\operatorname{Ext}$:
$$
\cdots\to\operatorname{Ext}^\ast(\mathbb Z,M)\to\operatorname{Ext}^\ast(\mathbb Z[G/H],M)\to\operatorname{Ext}^\ast(\ker,M)\to\cdots
$$
But now it looks like $\operatorname{Ext}^\ast(\ker,M)$ is not giving the relative group cohomology groups we want: the long exact sequence isn't the same as the one above, it's gotten flipped around.  I guess this doesn't entirely disqualify the construction, since perhaps we have $H^\ast(G,H;M)=\operatorname{Ext}^{\ast-1}(\ker,M)$, but in this case I'd still like an explanation for why this dimension shifting happens.
 A: Here are some remarks: the situation we would like to model algebraically is this: suppose $H$  is a subgroup of a group $G$ and $M$ is a $G$-module. Let $L_M$ be the corresponding local system on $BG$. Then we have a map of classifying spaces $f:BH\to BG$ obtained as follows: take $EG$, a contractible space on which $G$ acts freely and quotient it by $H$; the result will be $BH$ and it maps to $BG=EG/G$. The local system $L_M$ pulls back to $BH$, which gives a map $f^*:H^*(BG,L_M)\to H^*(BH,f^{-1}L_M)$. This is, of course, the map $H^*(G,M)\to H^*(H,M)$.
A side remark: if $H$ is normal, then $f$ is the projection of a principal $G/H$-bundle, which gives the classifying map $g:BG\to B(G/H)$. Now, if one replaces $g$ with a Serre fibration, the fiber will be $BH$ [this is not completely obvious; perhaps I'll add a reference later] and the local system restricted to the fiber will be isomorphic to $f^{-1}L_M$. Taking the Leray spectral sequence of this fibration one gets the Serre-Hochschild spectral sequence.
Now, coming to the derived functors picture: the cohomology $H^i(G,M)$ is the $i$-th derived functor of the invariants functor from the category of $G$-modules to the category of abelian groups. In other words, we have to derive the functor $M\mapsto Hom(\mathbb{Z},M)$. There are two ways to do that. First, we can replace $\mathbb{Z}$ with a projective resulotion; this is what people usually do since this resolution can be written down explicitly and the resulting $Hom$ complex is the standard cochain complex $C^*(G,M)$. But we can take an injective resolution of $M$; it would work just as well. So $H^i(G,M)$ is nothing but $Hom_{D G-mod}(\mathbb{Z},M[i])$ (unless I've messed it up and there should be minuses somewhere).
Every $G$-module is an $H$-module, which gives a functor $f^{-1}:D G-mod\to D H-mod$. This functor corresponds to pulling sheaves from $BG$ back to $BH$ and it has a right adjoint $f_*$, which corresponds to pushing sheaves forward from $BH$ to $BG$. The construction of $f_*$ is not too difficult, but requires some work, see Bernstein-Lunts, Equivariant sheaves and functors, part I. We have a natural adjunction morphism $M\to f_* f^{-1}M$; if we apply $Hom_{DG-mod}(\mathbb{Z},-)$ to the shifts of this morphism, we get the maps $H^*(G,M)\to H^*(H,M)$. Now, the relative cochain complex of the posting computes $Hom_{DG-mod}(\mathbb{Z},-)$ of an object $A$ of $DG-mod$ such that $A\to M\to f_* f^{-1}M\to A[1]$ is a distinguished triangle.
A: Your argument is correct, and you do get that the relative group cohomology in your terms is a shift of these Ext-groups.
One reason why the dimension-shifting behavior occurs is that, with original gradings, you can't possibly have that $H^i(G,H;M)$ are the derived functors of $H^0(G,H;M)$.  In fact, $C^0(G,H;M)$ is always the zero group, and so $H^0(G,H;M)$ is always zero; its derived functors are zero.
In this case, what your argument shows is that $H^{i+1}(G,H;M)$ is the i'th derived functor of $H^1(G,H;M)$.
If I might be permitted to wax philosophical, once one has moved to chain complexes the general yoga of triangulated categories says that one shouldn't really worry about the distinction between a kernel and the shift of a cokernel.  Up to weak equivalence of chain complexes, one can always move between these.
