However, one edge from house to tree wasn't clear at first because, I thought of it as logical or while it was about logical and. Other than that, pretty awesome work!!
Edit:: Scrolling down the comments someone seems to already implemented a graph search. That is pretty quick: https://news.ycombinator.com/item?id=32885309