I figured it out. It won't let me setProperty with an string array value within the loop, although it allows it outside of the loop.
I needed to cast to a String within the for loop. Final code taking out all the steps no longer needed.
stepResults = testRunner.getResults()
count = 0
for(res in stepResults)
{
testRunner.testCase.setPropertyValue("StepName"+count, res.getTestStep().getName())
testRunner.testCase.setPropertyValue("StepStatus"+count, res.getStatus().toString())
log.info testRunner.testCase.getPropertyValue("StepName"+count) + " : " + testRunner.testCase.getPropertyValue("StepStatus"+count)
count++
}