Updated tallying partial/quad currents on reflective BC
Updated tallying partial/quad currents on reflective BC

Old treatment: avoiding scoring either outgoing or incoming currents
on reflective BC by artificially moving the neutron backward (from the
BC into the geometry) before scoring the outgoing current (and move it
back after), and artificially moving previous location of the neutron
forward (from the BC into the geometry) for the next event. This is
not an issue for CMFD because CMFD only uses net current, and we know
the net currents on reflective BC are zero. For LOO however we care
about the actual quad currents, and they are not zero.

New treatment: almost the opposite of the previous treatment in order
to make sure both outgoing and incoming currents are
scored. Essentially we move the neutron forward (from the BC to
outside the geometry) before calling scoring the outgoing current (and
move it back to the right position after). When we are done with
setting the new direction of neutron based on reflective property, we
move the previous location of the neutron backward (from the BC to
outside of the geometry) for the next event, making sure that when the
next event happens, it would score the equivalent of an incoming
current on the reflective boundary.

Test: see next commit.

lilulu/openmc,lilulu/openmc,lilulu/openmc