I have the following code that I created:
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[->]
\node[label=west:$s$,circle,fill,inner sep=1.5pt] (n0) at (-1,1) {};
\node[label=west:$e_1$,circle,fill,inner sep=1.5pt] (n3) at (0,2) {};
\node[label=east:$e_2$,circle,fill,inner sep=1.5pt] (n4) at (2,2) {};
\node[label=west:$e_3$,circle,fill,inner sep=1.5pt] (n1) at (0,0) {};
\node[label=east:$e_4$,circle,fill,inner sep=1.5pt] (n2) at (2,0) {};
\node[label=north:$e_5$,circle,fill,inner sep=1.5pt] (n5) at (1,1) {};
\node[label=south:$e_6$,circle,fill,inner sep=1.5pt] (n6) at (1,0) {};
\node[label=west:$e$,circle,fill,inner sep=1.5pt] (n7) at (3,1) {};
\path
(n1) edge [bend right=60] node [swap] {} (n2);
\end{tikzpicture}
\end{document}

I want to create edges, just like the bended ones between all $e_i$ (complete directed graph with edges going both ways) and between $s -> e_i$ and $e_i -> e$.
I could do it manually, but it seems very taxing, especially since the graph could become larger. I would also have to bend each edge in the right way.
Is there some package/magic tikz option that would allow me to create a complete subgraph over $e_i$ and add edges between $s$ to all $e_i$ and between all $e_i$ to $e$?

