Prevent a double network request
I’m seeing a double network request because the initial value of _query is null. When the initial value is null, the first update calls performSearch, which in turn sets the query to ‘’, which then kicks off another update and search.
I couldn’t see a reason to have the null value as an option for _query, but since it would be backwards-incompatible to change it now (I think), I left it as an option.