fixes #55, optimized drawing, less client side processing