Uses `reduce(into:,_)` instead of `reduce(_,_)` which gives an order of magnitude performance gain.
Tests on MacBook Pro 2018 (2,3 GHz Quad-Core Intel Core i5, RAM LPDDR3) show for array of random 100_000 elements:
* original implementation 0.410 sec
* proposed implementation 0.048 sec
* also tried `lazy.map{ String(format: "%02x", $0) }.joined()` which takes 0.232 sec