heterodyne: Factor out code to paste subscans for a single receptor.

This mostly originated in _INDEX_BAD_RECEPTORS_.  This has extra code
offering an efficiency gain of a single PASTE command without NDFCOPY
commands when all the subscans are of equal length, i.e. have the same
number of spectra.

Also looking to use it elsewhere to the high-frequency noise filtering
faster for multi-subscan observations.
heterodyne: Fixed bugs for multi-subband observations.

Not sure what I was thinking when I originally put this primitive
quickly together.  For subbands it was reporting whether the data were
good after each subscan, and while pasting it was using the wrong
offset (the end rather than where the last subscan ended) thus giving
wide bands of bad values between, and as a consequence giving rise to
failures.  So even if the first subscan reports as good, for each
subsequent one the originl primitive would report a failure, thus
rejecting most or all receptors.  The second bug is corrected in the
new _PASTE_SUBSCANS_BY_RECEPTOR_ primitive all the data for a given
receptor.  This primitive also has efficiency benefits too.
heterodyne: NDFCOPY no longer called here.
heterodyne: Correct the PASTE shift for samesized subscans.
heterodyne: Copy section instead of pasting when rthere is only one subscan.
heterodyne: Change shift indexing.

This should make no change to the values since previously it was
finding the current lower bound and subtracting one.  I thought that it
would be clearer to use the previous subscan's upper bound instead.