[pvr.tvh] define the *tvh pointer in client.h since only client.cpp
uses it
[pvr.tvh] add AsyncState.h to VS project
[pvr.tvh] always require a restart when a setting has been changed
[pvr.tvh] introduce a struct for storing all addon settings

This struct is created when the addon is started and stored as a const
reference in CTvheadend. This way we avoid having to lock the global
mutex whenever a setting value has to be read. It was generally not
needed before either since the only time a setting could change was
right before the addon was restarted or when the timeout parameters
where changed (which didn't require a restart). This removes that
uncertainty.
[pvr.tvh] remove unneeded extern declarations form client.h
[pvr.tvh] don't assume the ADDON namespace is used in Tvheadend.h

This has worked since every class that uses Tvheadend.h has also
had "using namespace ADDON" in it
[pvr.tvh] add a constant for the maximum VFS buffer size