The following code looks as in the picture below:
\documentclass[tikz,border=2mm]{standalone}
\usetikzlibrary{positioning}
\begin{document}
\begin{tikzpicture}[block/.style={rounded corners, minimum width=3cm, minimum height=2cm, draw}]
\node[block] (1) {This message stretches the box out quite a lot.};
\node[block, above right=-.5 and 2 of 1] (3) {3};
\node[block, above right=-.5 and 2 of 3] (5) {5};
\node[block, below=of 5] (6) {6};
\node[block, below left=-.5 and 2 of 6] (4) {4};
\node[block, below left=-.5 and 2 of 4] (2) {2};
\node[block, below=of 6] (7) {7};
\begin{scope}[->, shorten >=1mm, shorten <=1mm]
\draw (1) to[out=0,in=180] (3);
\draw (3) to[out=0,in=180] (5);
\draw (3) -- (4);
\draw (2) to[out=0,in=180] (4);
\draw (4) to[out=0,in=180] ([yshift=5mm]5.south west);
\draw (2) to[out=-30,in=230] (6);
\draw (6) -- (7);
\draw (5) to[out=0,in=0] (7);
\end{scope}
\end{tikzpicture}
\end{document}
(Thank you Ignasi for that code.)
I have two questions:
- How can I flip the whole thing by 90 degrees? I would instead like the arrows to flow downward.
- How can I split the message into two rows so it doesn't stretch the first block so much? I tried adding \ but that didn't do anything.

text width=...in node 1 options. – Ignasi Jul 07 '16 at 17:32align=centerto the definition of theblockstyle. (Or do what @Ignasi says which will also work without needing an explicit line break). To rearrange the nodes you will need to play with the positioning parameters. – Alan Munn Jul 07 '16 at 17:33positioninglibrary is working and try to distribute nodes according your new taste. This is different formflip the whole thing by 90 degrees. – Ignasi Jul 07 '16 at 17:36