Use CTBlockDescription to know argument counts

Remove eachWithIndex, make map able to take two parameters the second being index
NSString.split(@"") works

It is logical that splitting by nothing will split by the smallest possible unit, ie. nothing, so all characters are split out into an array.

Though, no other framework does this. It's often something I've expected and sometimes: needed.