Fix constness of array.d

Thanks to @aG0aep6G this works as far as I can see.
A lot of these functions are actually hold overs from when Array was "sealed". They were left in to avoid breakage if somebody forgot to import std.range. If extra code needs to be added, we might as well just purge all these functions (move*).