New buffers respect previous :nohl command

There a number of pieces of state that decide whether the tags from the
previous search should be displayed in buffers.  Previously all of the
taggers kept track of this state themselves.  This meant that newly
created taggers missed certain state transitions (most notably the :nohl
command).  Hence they would incorrectly display tags for a period of
time

To fix this all of the logic is now centralized and persisted in
IVimData.  This means newly created taggers will get access to the
persisted state and properly respect :nohl.

closes #1164