(PUP-2240) Add unfold of array using splat unary * operator

This adds the ability to unfold values into individual parameters
and entries in lists the same way as this is done in Ruby.
(PUP-2240) Fix failing test (hash order ruby 1.8.7)
(maint) Remove calls to removed function

On master, the extra check if a function was available before evaluating
arguments was removed. The rebased code still had this call.
(PUP-2240) Refactor unfold behavior into common method

A private evaluator method called unfold is added to handle
the case of iterating and evaluating an array of expressions where
an UnfoldExpressionExpressions should be unfolded/expanded in-line.

This new method is then used in the places where unfold behavior
is supported.
Merge pull request #2532 from hlindberg/pup-2240_unfold-array

(PUP-2240) Add unfold of array using splat unary * operator