move XUnit report building into specific reporter object