Really fugly, but working, link_item utility class.
Massive cleanup and DRYing up of LinkItem class and clients/specs.

It now serves (translucently) as a factory for the new SimpleItemFormatter and WikiItemFormatter classes., which share a common Formatters module (defining most of their common API). The ArticleDecorator class and the article-show view have been touched to use the new LinkItem.create method rather than LinkItem.new. No, you can't _quite_ do a Taster's Choice in Ruby, calling one object's initialiser and having the instance actually be of something completely outside its hierarchy. Or if you can, I (a) haven't figured out how yet and (b) really don't want to play quite that deep a mind game with the interpreter/VM.