building out the array transpose method as requested in #146

While I am not exactly sure why one would use this and if it really belongs in core, it was an fun bit of coding. Currently it always outputs a array of strings even if it was handed a 2d array. I am not sure if this is really what we want to happen here. Also if does not check to see if $fill character is a single character or not, should it? It seems that if you are altering the default then you know what you are doing, though again as I can not really conceive why this is useful I am failing to find a case where this would help.