Fix some leaks in OpenDocument and Office OpenXML extractors
KArchiveFile::createDevice() returns a pointer to a QIODevice which has to be freed by the caller (contrary to e.g. KArchiveDirectory::entry() which is just a reference).
Also always check if an entry corresponds to a file before accessing or static_cast<KArchiveFile*>'ing it.