Swiped tricks from http://gitorious.org/goibhniu/configuration-files/blobs/master/.emacs - TODO, work out why volatile-highlight blows up when trying to use ansi colours in shell-mode.