/// Creates a new <see cref="ITerminalViewModel"/>.
/// </summary>
/// <param name="viewType"><see cref="TerminalViewType"/> of the new <see cref="ITerminalViewModel"/>. Must be set at creation time for all <see cref="ITerminalViewModel"/></param>
/// <param name="protocolType"><see cref="ProtocolType"/> of the new <see cref="ITerminalViewModel"/></param>
/// Service Extension to add all implementations of <see cref="ITerminalViewModel"/> to Dependency Injection.
/// Also adds <see cref="TerminalViewModelFactory"/> to Dependency injection, which allows instanciation of <see cref="ITerminalViewModel"/> during runtime.