Moved certain type definitions to their own file.

Namely, this moves the definition of struct QomposeFileDescriptor from
QomposeFileDialog.h to a new QomposeTypes.h file. This means that this
type can be reused in other places without including all of the dialog
code as well.
Reopening closed buffers now remembers cursor position.

When reopening a recently closed tab using Ctrl+Shift+T, the cursor
position is now correctly reset to where it was when the buffer was
closed, instead of simply being positioned at the beginning of the file.