I added the following code to my .vimrc:
\" save and restore folds when a file is closed and re-opened
autocmd BufWinLeave *.* mkview
autocmd BufWinEnter *.* sil
Per Jays comments this is the most elegant solution, I have a LOT of plugins and run it on multiple OSes and have just tested it.
autocmd BufWrite * mkview
autocmd BufRead * silent loadview
It does not break MRU and make you have to double query MRU It does not error when you :new into an empty buffer It also doesn't require you to create FileType patern for every file-type you may possibly use.
NOTE: using "loadview" on "BufNewFile" apears to be what confuses MRU, rather pointless trying to render folds on an empty buffer I would have thought??