Support non-square elements in regular quad mesh generation

as titled
@endJunction was a bit unhappy with this function and voted for a local implementation in your utility as it is not needed anywhere else. 
I don't know if that has changed ... if it is no longer an issue we could merge this ...