Predicate constructors

Fixes #78.