Cycle message roles on ctrl-r (#2619)

I'd like to follow up to allow roles to be cycled for the selected range
and support multi-cursors, but this is a start and contains a
refactoring, so going to merge.

Release Notes:

- Added the ability to cycle roles in the assistant with `ctrl-r`
c3b2b4c4e3Nathan Sobo committed on 6/16/2023, 8:11:01 PM· committed by GitHubparents7ff194f75b5ac8
2 files changedLine totals unavailable