Provide a way for objects to specify a tree interceptor but that it shouldn't be used by default. Allow the user to force usage of the tree interceptor using NVDA+space.

NVDAObjects specify that the tree interceptor shouldn't be used by default by setting shouldCreateTreeInterceptor to False.
If appropriate, the toggleVirtualBufferPassThrough script forces this to True and causes the tree interceptor to be created.
This is the basis for users to force browse mode in ARIA applications and dialogs.
Allow the user to force browse mode for applications and dialogs in Mozilla applications.
Allow the user to force browse mode for applications and dialogs in Internet Explorer/MSHTML.
inputCore.InputGesture: the base implementation of the displayName property now calls getDisplayTextForIdentifier on the first of this gesture's identifiers.

 # Please enter the commit message for your changes. Lines starting
Generate friendly names for touch gestures and allow them to be localizable, when shown in the Input Gestures Dialog etc.

Specifically:
 * touchTracker.py: add an action_hold constant which although never needed by touchTrackers themselves, is needed by TouchInputGesture.
 * touchTracker.py: lowercase all the values of the action_* constants so that they can be looked up in dictionaries easier.
 * touchTracker.py: add an actionLabels dictionary which contains a mapping from action_* constants to friendly localizable action names.
 * touchHandler: add a touchModeLabels dictionary which maps from available touch modes to localizable mode names.
 * touchHandler.TouchInputGesture: add a pluralActionLabels dictionary which maps from counting words (double, tripple... ) to friendly localizable template labels which have a variable action.
 * touchHandler.TouchInputGesture: add a multiFingerActionLabel string which is a localizable template label that has a variable action, for multi fingered actions.
  * touchHandler.TouchInputGesture: implement  the getDisplayTextforIdentifier method.
Map TRichEdit window class to RichEdit20. Re #3693 Re #3603 Re #3581
wordDocumentTextInfo.getTextWithFields: return an empty list of the TextInfo is collapsed, rather than starts and ends with no text.
touchHandler: make sure to use unicode strings where their format method would be given unicode vales.
Merge branch 'master' into t2023
MSHTML virtualBuffer: When an application or dialog has been explicitly made to use a virtualBuffer, make sure that any decendent nodes are actually classed as being in the buffer, so that the user can actually use it.

Specifically:
virtualBuffers.MSHTML.MSHTML.__contains__: check if the ancestor object is an application or dialog only after checking to see if its the virtualBuffer's root NVDAObject.
In browse mode and other text with fields, if a table is marked as hidden, then ensure that itself and its cells, rows etc are given a presentation category of layout. This supresses announcement of "cell" for cells who's table is hidden and therefore may not even contain complete table info.
MSHTML vbufBackend: treet any node as hidden if it has an ARIA role of presentation. I.e. this node will be hidden, but its decendants may still be rendered. Also do not bother calculating or exposing table information for a table that is hidden.
l10n updates:
From translation svn 13720.
updated miscDepsJp
Merge branch 't2023'. Fixes #2023
Merge branch 't3624'. Fixes #3624
Merge branch 't3693'. Fixes #3693
Merge branch 't3713'. Fixes #3713
Merge branch 't3702'. Fixes #3702
Merge branch 'master' of git://git.nvaccess.org/nvda into jpbranch