Breaking out this subtask from #82 as this is a much bigger ask and deserves its own issue.
Breaking out this subtask from #82 as this is a much bigger ask and deserves its own issue.