With regards to the var_name, a dim0 or dim1 say, is what we assign when there isnt the necessary information to make a suitable one.  The relation between this name and which dimension if belongs to is an artificial and unnecessary link that we have created.  I dont think we should hold to this convention or worry about incrementing where this is concerned.  The variable name should not identify it as belonging to a specific dimension, this is likely to change after processing or whatever anyway.

However, you might be onto something with the conflict checking as I had not considered that the incremented name might still be in conflict.  I will check for this and update accordingly if applicable, thanks @esc24