Currently, Headers uses 1 array for ids and 1 for the actual headers. Experiment whether joining them into one array makes sense, e.g.:
This saves 4 bytes (compressed OOPs) for an array ref, plus the overhead of the array itself. Plus, resizing only has to be applied to 1 array.