Utilize the new reserve() function in UniValue
in order to not reallocate the transactions vector when
capacity increases.
Also utilize __pushKV which does not check for duplicate keys.
This improves getblocktemplate performance by ~4% on my machine.
I only touched the tx loop since it's the most performance-critical
section of this code, especially as the number of txs increases.
Depends on D6063