refactor node renderer (WIP)