Current implementation doesn't always work. For example if one uses
mu4e:
```
(add-hook 'after-init-hook #'mu4e-alert-enable-mode-line-display)
```
`global-mode-string` will have `((:eval mu4e-alert-mode-line))` as
it's value. And it will result in error:
```
Error during redisplay: (eval (mood-line-segment-global-mode-string)) signaled (void-function :eval) [11 times]
```
This commit uses `format-mode-line` function to manually evaluate
`global-mode-string` and append it's result to the mode line if any.