change multiFromArray to accept both array and an object implementing Traversable

multiFromArray does not work directly off of the provided array to build objects
instead it traverses the provided $iterator, each element in $iterator must be
a php classic array