source-view: use EggSignalGroup to manage buffer signals
Instead of managing all the individual handlers and their emission state manually, use EggSignalGroup to manage them as a set. This doesn't quite delete enough code from IdeSourceView, but I hope we can get there soon. In particular, we still have to connect to notify::buffer. That can be changed to notify::target in the EggSignalGroup or we can add ::bind/::unbind signals which might read a bit cleaner. Additionally, it would be nice to use signal groups for the completion sub-object. Lots to do!
Showing with 97 additions and 139 deletions