Alert with error bell when moving past first/last change (#439)
Ideally this change would be half a dozen lines of `error_bell()` changes. However, because we currently do all of our change movement handling via GActions, our sensitivity handling prevents the actions from even being triggered. The workaround in this patch is to create a GObject signal with a trivial handler that just invokes the common change movement call. Since this signal is not subject to sensitivity, it will still be hit when the action is disabled. The way this currently works, we still have the action key bindings as well as the CSS-controlled signal bindings. I'm torn on what the best way to handle this is, since while the overlapping bindings may be slightly confusing, I definitely don't want to migrate everything to CSS bindings.