Simplify "hung" logic in sly-mrepl

* contrib/sly-mrepl.el (sly-mrepl--stacked-errors): New buffer-local variable.
(sly-mrepl--frozen-prompt-overlays): Remove
(:freeze-prompt, :unfreeze-prompt): Simplify.
(sly-mrepl-errored-prompt-face): New face.
(sly-mrepl--prompt-face): Decides which face based on
`sly-mrepl--stacked-errors'.
* sly.el (sldb-insert-frames): "auto-more" button catches more cases.
Improve sly-mrepl consistency

* contrib/sly-mrepl.el (:copy-to-repl, :evaluation-aborted): Use
`sly-mrepl--insert-output' to insert notes.
(:copy-to-repl): Simplify. Doesn't need to `mrepl--send-input'
(:copy-to-repl, :evaluation-aborted, :write-string): Use
`sly-mrepl--catch-up'
(sly-mrepl--catch-up): New function.
(sly-mrepl-insert-input): Fix error when getting input.
Simplify trace dialog in preparation for C-M-RET

* contrib/sly-trace-dialog.el (sly-trace-dialog--detail-mode)
(sly-trace-dialog--detail-mode-map)
(sly-trace-dialog--make-autofollow-fn)
(sly-trace-dialog--open-detail): Removed.
(sly-trace-dialog-spec, sly-trace-dialog-spec-button): New button
type and constructor.
(sly-trace-dialog--insert-trace): Simplify using buttons.
(sly-trace-dialog--insert-trace): Call
`sly-trace-dalog-part-button'.

* contrib/swank-trace-dialog.lisp (inspect-trace): New slyfun.