display 2d histogram data

Add 2d data source to experiment histogram display.
This is nearly identical to DataHandler. I see we do mapdata but what is the difference and why do we need it to be two nearly identical functions?