Introduce m_defaultProgram for default system program

we hide both systemdefault and browsed items in case of filtering;
otherwise we show both of them.
FileViewMan: OpenWith tables and preferred prog funcs
OpenWithDlg: Highlight preferred SAID in applist
keep ExtOpenWith as a FileViewMan internal table

Also changed the FileViewManager::GetPreferredOpenApplication signature
now that we know it always succeeds.
Also in FileViewManager::SetPreferredOpenApplication we have to do
INSERT OR REPLACE, not UPDATE.
OpenWithDlg now has preferred app and sandboxed opening

OpenWithDlg now sets preferred app on accept. By default preferred
checkbox is checked.
Also returns the sandbox opening in its OutParams.
Open With implemented and working (without the details)

Now FileViewManager::preferredOpenProgram also stores EOWIDs which is
required for FileViewManager::SetPreferredOpenApplication, even if we
want to use `INSERT OR REPLACE` sqlite query again it's the same.
FileViewManager::OpenWith also gets dialogParent for the OpenWith dialog
and is now fully implemented; along with some other changes at
FileViewManager, i.e adding FileViewManager::RealOpenFile.