pipe_pred: do not compile policies with pipes in preds

The way that the LocalCompiler generated flowtables when pipes appeared
in predicates broke the NetKAT laws, specifically ka-plus-comm which you
can see on build 706 on travis-ci. The LocalCompiler now fails if it
encounters a pipe in a predicate, and the quickcheck arbitrary instance
for predicates has been changed to not include pipe locations.
Merge pull request #334 from frenetic-lang/pipe_pred

pipe_pred: do not compile policies with pipes in preds