HTML5 canvas based visualizations of common data-structures and algorithms