Refactor the list view in a separate component

This will make maintenance easier and allow other project to extend from
it more easily as well.
Hide "Recent Files:" when no recent file is present

This is done through a Binding property so we can link the model to the
visibility property of the text
Move the proxy/model/type outside of the welcome screen

It was fine for rapid prototyping/coding but it's really quite dirty. To
improve readability and reusability, we move each of them in their own
class.
Make sure that the clear history works

Also change the image file type to the actual value ("ImageFile") so
the workflow and the editor show the recently loaded volumes.