added new transformer API, still missing chained visitors