Added gradle wrapper
Ignore VI swap files.
Added CartesianIterator