PrintPhotoReceptors, FillInPhotoreceptors: Bug fixes and restore Octave compatibility.

fields() doesn't exist in Octave 3.6.x, but fieldnames() does and does
the same thing.
Use proper short-circuit boolean operators.
Replace obsolete isstr() by ischar().
Fix loop variable bugs.