Turn on evil-mode globally

I swear I've done this before, but if so I seem to have lost it.
Activate evil-mode only for programming and text modes
Fix up todo.txt a bit more
Use add-auto-mode instead of modifying auto-mode-alist