Merge pull request #112 from mikey179/master

introduce predicates
Merge pull request #113 from mikey179/master

add contains predicate
split into two separate predicates