Decode MIME encoded-word headers
    https://en.wikipedia.org/wiki/MIME#Encoded-Word

    :param msg_headers: Dictionary of message headers
    :return: Dictionary of message headers

def decode_message_headers(msg_headers):
    '''
    Decode MIME encoded-word headers
    https://en.wikipedia.org/wiki/MIME#Encoded-Word

    :param msg_headers: Dictionary of message headers
    :return: Dictionary of message headers
    '''

    headers_to_decode = ['from', 'reply-to', 'subject', 'to']

    for item in headers_to_decode:
        return_list = []
        try:
            # decode the header
            decoded_header = pyzmail_decode_mail_header(msg_headers[item][0])
            # add the header to a list as we want to return a list
            return_list.append(decoded_header)
            # replace the item in the dict with a decoded version
            msg_headers[item] = return_list

        except KeyError:
            pass

    return msg_headers