Better support for Arrays

Instead of flattening all values of an array into an element, now a new element is 'created' on the fly for each value of the array.

This allows one to use XPath like this : `/myarray/e[5]`.

Adding this e can seem significantely annoying, but it is necessary since XPath forbids empty element names (so does XML).

I needed it to be able to iterate over each element of an array via the API.

It breaks backward compatibility but as I'm currently the only user :-)