Create Visualizer interface

Methods are Record() which accepts an EventDataPoint as part of the
data which the visualization is to represent, and Render(), which
returns the rendered visualization.