Ah:

Note only the farthest right tuple stream will be used as the outer join. All preceeding joins to the left will be inner joins. See MixedJoin for more flexibility.

I think that we want to reserve the LeftJoin, RightJoin and OuterJoin for cases with only two pipes coming in. Otherwise, let's use `CascalogJoin`, take a map of flow -> keyword and convert the keywords into:

```clojure
CascalogJoiner$JoinType/INNER
CascalogJoiner$JoinType/OUTER
CascalogJoiner$JoinType/EXISTS
```