I apologize if this is a duplicate, but I'm having a hard time finding an elegant solution. I have something that "works," but feels wonky.

I'm making a presentation in beamer and I want to have boxes with arrows pointing back and forth between objects. Here's a mwe with an idea of what I would like to achieve:

```
\documentclass{beamer}
\usepackage{tikz}
\usetikzlibrary{calc,arrows,shapes}

\begin{document}
\begin{frame}
  \tikzstyle{service} = [draw, fill=blue!20]
  \begin{figure}
  \begin{tikzpicture}[node distance=2cm, auto,>=latex', thick]
      \path[->] node[service] (svc1) {service 1};
      \path[->] node[service, right of=svc1,xshift=2cm] (svc2) {service 2}
                    (svc1.10) edge node {restarts} (svc2.170);
      \path[->] node[service, below of=svc2] (svc3) {service 3}
                    (svc2.280) edge node {configures} (svc3.80);
      \path[<-] (svc2.240) edge node {} (svc3.120);
      \path[<-] (svc1.-10) edge node {} (svc2.190);
  \end{tikzpicture}
  \end{figure}
\end{frame}
\end{document}

```

However, I believe that this seems like such a simple problem that a more elegant (automated) solution vs. putting in angles must exist.