mostly done

still has a bug that stops it working in odd numbered worlds and single
column worlds