Added a lot of code from my old ~/.vimrc

It has to be cleaned up and restructured, but it can stay for now.