refactor renderer and server to increase responsiveness