Create parse and transform; Make search take data
Pulling appart search into parse and transform will lets us combine new
searches with previously parsed ones. Search now takes a data set
instead of returning a function to be applied to a data set.
Remove unnecessary defsearch macro
update example with parse/transform/search changes
fix bug with multiple terms