cleanup
use XMonad.Layout.Gaps to manage top dock gap instead of avoidStruts, because xmobar seems not always set STRUT property on time.