Using static const instead of #define.
Now calling all the way up the designated initializer chain. DRY.
Minor cleanup.
Added the ability to start the push transition from the left or the right.