algorithm: permit r=0 in pick_lattice_points()

Permitting the wavevector (0,…,0) can be useful to check the
normalisation, e.g., of structure factors.

Fix (hkl) loop to have non-negative indices ('idx' must be
non-descreasing).
observables.density_mode: fix box length in modulation

The wrong box height was passed to the modulation constructor, resulting
in totally screwed up GID intensities.

Let's blame Lua for this because of its stupid 1-based index convention.