**Use case**
Some program left garbage in terminal.

**Describe the solution you'd like**
Subset of what `reset` command does.
BlockOutputStreamPtr logs_out_stream;
    String home_path;
    String current_profile;
    String prompt_by_server_display_name;
    /// Path to a file containing command history.
    String history_file;
    /// How many rows have been read or written.
    size_t processed_rows = 0;
    /// Parsed query. Is used to determine some settings (e.g. format, output file).
    ASTPtr parsed_query;
    /// The last exception that was received from the server. Is used for the
    /// return code in batch mode.
    ser_exception;
    /// Likewise, the last exception that occurred on the client.
    std::unique_ptr<Exception> client_exception;
    /// If the last query resulted in exception. `server_exception` or
    /// `client_exception` must be set.
    bool have_error = false;
    UInt64 server_revision = 0;
    String server_version;
    String server_display_name;
    Stopwatch watch;
    /// The server periodically sends information about how much data was read since last time.
    Progress progress;
    bool show_progress_bar = false;
    size_t written_progress_chars = 0;
    bool written_first_block = false;
    /// External tables info.
    std::lal_tables;
    /// Dictionary with query parameters for prepared statements.