wrap screen redrawing in a function to try and avoid screen flicker

Some versions of gvim flicker when `redraw!` is used. Use `redraw` for
them and use `redraw!` for terminal vim.

Fixes #449