Visited links from @Technical-13 's patch

This is @Technical-13 's patch, reverted, reverted, reverted again, and finally reverted (I think...).

I've moved it out here again so it can have a bit more love and attention before being merged back in. Please let me do the merge, and don't just hit the merge button on github cos it'll probably mess up due to the amount of messing around I've done with this.

I'm hoping to extend bootstrap a bit and make the visited links use the browser history instead of javascript, and define a few new styles which are subtly different, but still clearly the button type they're meant to be.