hash: made size types `unsigned`.¹

1: std::size_t was overkill.
hash: added size property to generic_combiner.