feat(header_dict): the class is now header-only

Based on careful measurement, inlining balances very well.

header_dict::iterator is now a mutable iterator, though there is no
public interface involving it.