Replace doseq in generate/encode-map with loop and recur to reduce initial memory footprint.

With testing on my local system this change reduced the memory footprint by ~10mb.
Because doseq uses loop/recur internally, and this fn isn't using any of its special features, it seemed like an easy and safe replacement.