GUI: respect Content-Disposition for all MIME types

This patch reworks the way how "attachments" are wrapped in the AttachmentView.
It's done via the following steps:

1) The wrapping is moved into the PartWidgetFactory::create
2) LoadablePartWidget is changed to delegate actual widget instantiation to the
PartWidgetFactory
3) A bunch of changes were needed to make sure that there are no excessive
click-through buttons when the attachment was originally hidden, when the
network is offline, etc.
4) The "supported MIME types" got changed so that container types (i.e. parts
which are made from other parts, and wherefore it doesn't make sense to check
their size directly) are handled properly (i.e. don't invoke click-through on
them)
GUI: support durect-quoting from visible attachments