Array.evolve that doesn't mutate its argument

We were getting a `can't modify frozen Array` error when our application code was simply calling an attribute setter on a mongoid instance. The `map!` in this method turned out to be the culprit...

Thanks for the libraries!