Main package. Contains the Pattern class, an interface for Constraint, and a Searcher that implements iterative search.