Add option 'g:CommandTUseMruBufferOrder'. When this setting is off (the default) the matches for the buffer list will appear from top to bottom with the topmost being selected. Turning it on causes the most recently used buffers to be displayed at the top, and the initially selected match is the second most recently used buffer, i.e. the second buffer in the list in case it exists.
I'm not sure whether this implementation is the right opproach. Of course I'm open to suggestions on improvements.
Add support for MRU buffer ordering.
I'm currently giving this pull request a try, as I've been thinking about this feature as well. So far, it seems to work as advertised. I'm going to keep using it for now and will add any further feedback here as I gain experience with it.
One small issue with the patch: :h g:CommandTUseMruBufferOrder doesn't appear to exist, even though it's defined in the patch and visible in the help file. Likewise, that setting doesn't appear in the help completion, ala :h g:CommandT<tab> or similar. I assume this is some minor syntax problem with the patch to doc/command-t.txt, but haven't had time to look at it.
Merge remote-tracking branch 'upstream/master'
I've messed up this pull request by committing everything to master, I'll fork again and open a new pull request.