Replace manual binary search by a QHash
This reduce the size of the code considerably, allow to support
extension with more than 3 characters and considering that the list of
extension is less than 20 elements has no performance impact.
This also change the return type of Kleo::outputFileExtension to QString
since we are now storing QString in the classification map.