hw: move double list to extra header

ref #1174
hw: for_each & safer type casts in Double_list

ref #1174