Set smarter mouse modes

Give vim the mouse in normal & visual mode, otherwise let the terminal
keep it.
Make the vimrc editing command smarter

From stack overflow, if the current window is empty when you try open
the vimrc, open it there, otherwise split the window. At the same time I
changed nmap to nnoremap because that's better in this case.
Add some mappings for diffs and tabs

Namely, a mapping for diffupdate and mappings for navigating and closing
tabs.