enable `undo-tree-mode` when evil is activated

`undo-tree-mode` does not get activated automatically in
fundamental-mode buffers. But because it is required for Evil to work
properly, we use a hook to guarantee that `undo-tree-mode` is
activated as soon as Evil is activated, but only if
`global-undo-tree-mode` is activated as well.
merge stable-1.0
init undo-tree specific features using `eval-after-load`

--HG--
extra : rebase_source : 448493b68e6c94635e536ee61b2c3d30ed49330d
evil-ex: remove use of `assert`
merge stable-1.0