Extended with reading in coordinates, bug fixing, neighbour assigning. Still FIXME: loops