visual update lifted from http://atogle.github.io/pointillist/paint.html