New script Update-FarPackage.ps1 replaces Update-FarNet.ps1. The new script
installs or updates any NuGet package with special structure for Far Manager.
For now there are two packages "FarNet" and "FarNet.PowerShellFar". Other
FarNet modules will move to NuGet soon.

The script needs only PowerShell. It downloads packages by System.Net.WebClient
and unzips them by COM Shell.Application.

NOTE: Other authors can push their packages designed for Far to NuGet and use
this script for updates. This will work for native plugins, too. NuGet is for
.NET libraries in first place but packages can be created from any files, not
necessarily .NET related.

OTHER CHANGES

Removed the helper PowerShellFar.Wrap with methods ConverterToString and
Comparison. The first was needed for SubsetForm.ItemToString (not needed
anymore, script blocks can be used directly, see Test-SubsetForm-.ps1).
The second is not used, presumably.

REASON: OPC packages (NuGet) escape some characters (e.g. "+" becomes "%2B").
Update-FarPackage.ps1 and NuGet.exe decode such names correctly but on manual
unzipping such names will be problematic. We better avoid "+" and use another
symbol which is not escaped, say, "!".

Upgraded Update-FarPackage.ps1. See the help comments for details and examples.
Summary:
- Revised and simplified parameter names.
- It can just get and return the latest version.
- It can just download and unpack without updating.
- Much faster unpacking by System.IO.Packaging (instead of Shell.Application).

The genuine console with the prompt implemented as one line input box with Far
history completion, PowerShell completion with [Tab], PowerShell help with
[F1], etc. It is like the standard PowerShell console but in many ways more
powerful with Far UI behind. This mode is started from the menu in panels.
[Esc] in the empty line exits back to panels.

You can run Far Manager with this mode started:
Far.exe /w ps:$Psf.StartConsole()

This mode is useful already. But a few touches will make it even better and
looking more like the standard console, with less surprises.

Implemented internals of "Read-Host -AsSecureString" properly with a password
edit box in UI and SecureString returned as a result.

Command console

The input line is shown at the line before the last in order to be there always
regardless of the key bar presence. As a result the last line is always empty,
for now. Later we can make it either the status line with some dynamic custom
information or maybe the special console mode tool bar.
** Suggestions and ideas are welcome **

Other tweaks:
- [F1] in empty command lines opens the help topic "Command input line".
- $Psf.StartConsole() throws an error if it is called not from panels.
- Key and menu bars are hidden/restored, as panels.

Command console:
- UI (prompt, confirmation, choice) is mostly the same as in the MS PS console.
- Clicks outside of the input line are ignored (for now?) and do not exit.
- Too long prompts are not truncated but shown as read only edit boxes.
- [F4] Opens the modal editor for editing/pasting multiline code.
- Removed some AI on errors.

Command console:
- Read-Host and Prompt(): fixed history and password.
- Show-FarTranscript uses the external viewer by default.
- Transcribing is off by default, use Start-Transcript, Show-FarTranscript.
- Start-Transcript, Stop-Transcript work like in MS with minor differences.

Stepper: "Ask" mode shows step prompts at the top right corner of the window.

Removed menu "F11 \ PowerShellFar \ Modules+" as not useful anymore. In PS
v3.0+ modules does not have to be explicitly loaded for using commands. For
analysis of modules this command is more useful than the old menu:
ps: Get-Module -ListAvailable | Out-FarPanel

In MS PS console [CtrlC] stops all commands on user input, i.e. on read host,
prompt for choice, etc. The same ability is added to PSF. But in PSF [Esc] is
used instead in various prompts. Unlike in PS, it also asks a user to confirm.