I want to obtain this result:

and so far I've written this code:
\documentclass{minimal}
\usepackage{tikz}
\usetikzlibrary{automata,positioning}
\begin{document}
\begin{tikzpicture}[%
>=stealth,
shorten >=1pt,
node distance=2cm,
on grid,
auto,
state/.append style={minimum size=2em},
thick]
\node[state] (q) {$q$};
\node[state] (m) [right of=q] {};
\node[state,double] (f) [right of=m] {$f$};
\path[->] (q) +(-1,0) edge (q);
\end{tikzpicture}
\end{document}
But I have no idea on how to do the coloured ellipses. I just need to group graphically a set of nodes and apply to them a label (in the example N(s) and N(t)), so I don't care about the specific representation.
