next pass at printf support