This changes the location bar's AutoComplete provider to use asynchronous
queries instead of synchronous ones. No more blocking the main thread FTW!
r=mak
r=Mardak
r=dietrich
This makes the history code expire when we flush the temporary table data to
disk instead of every single time we add a visit. This is also now done on a
background thread as opposed to the main thread, in a transaction with other
work. In theory, this reduces fsyncs (but in practice, no change was noticed).
Regardless, this removes fsyncs from the main thread, which is always a good
thing to do.
r=dietrich
r=mak