Implement Doug's two killer features: 1) store all occurrences of a
header, not just the last, 2) use pure ordered structure for the
filters, allowing inter-mixing of filters (i.e. you can have some
List-Id filters followed by some X-Mailing-List filters followed by
more List-Id filters and they will all be matched in the correct
order).
Earlier i was using Tie::IxHash to make the filters hash ordered, but
i wasn't using it for the internal hashes so it was incomplete. I
didn't need hashes in teh first place; switching to nested arrays for
the filters structure solves this problem as well as Doug's killer
feature and as a bonus removes the Tie::IxHash dependency.
README:
Remove Tie::IxHash from list of non-standard modules.
minc:
Drop Tie::IxHash.
FILTERS and %headers become more complex structures (code and
documentation changes).
For now, use .mincfilter2 instead of .mincfilter (will change
back as soon as the new code has had a good shake-down).
(log_headers): Adapt for new %headers structure and add comment
cross-referencing the get_headers comment explaining the
structure.
(get_headers): Document the %headers structure. Build and return
the new structure, preserving multiple occurrences of the same
header.
(find_mh_folder): Use the new @FILTERS structure.
(MAIN): Use @FILTERS instead of %FILTERS.
In the closing pod section, fix the EXAMPLES section and add a
section documenting @FILTERS.