Search

Resolve #7 
We can clean this up a little bit if we make the `search` method handle when the search is nil.