Fix performance of flattener patch (#12919)

Authored by alexvieth on Mar 26 2018, 10:19 AM.

Description

Fix performance of flattener patch (Trac #12919)

This patch, authored by alexvieth and reviewed at D4451,
makes performance improvements by critically optimizing parts
of the flattener.

Summary:
T3064, T5321FD, T5321Fun, T9872a, T9872b, T9872c all pass.
T9872a and T9872c show improvements beyond the -5% threshold.
T9872d fails at 10.9% increased allocations.