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.