klipper: move duplicate parts of History to HistoryModel
Reason for the change
Most functions in the class are moved to HistoryModel to reduce duplication. The HistoryCycler class is now focused on processing the keyboard shortcuts. All references to the old History class are moved to the HistoryModel class, too.
Test plan
Screenshots or screen recordings
Bugs fixed
Edited by Fushan Wen