I've been pondering of late the value of Inheritance in programming. It strikes me it introduces more problems than it solves, however I would love to be proved wrong. I started out thinking about the ...