clearer c-slow code - initialiation, path and payoff behaviours now all in their own loops, which should make Vivado happier