added Table.js class, moved Grouping functions inside closure to allow privates
tables implemented with clicking, hovering and filtering.  Started adding multisort support
Addressing github comments

Most of the anonymous functions from the legend drawing have been moved
out to private variables, to avoid creating them each time we draw. The
one exception is the text width function, as this required the ctx var,
which we can't get at from a private variable otherwise.

Also moved the view logic for the legend into a legend.init() method,
and defaulted the chart to not having a legend, unless the chart.legend()
method is called.
Merge pull request #80 from tpkelly/master

Add legend to charts
rewrote multisort to be recursive and inside insight.Utils.  Updated Table.dataset() to use multisort and top().  Added tests.
merged Tom's Legend feature
Merge branch 'develop'

Conflicts:
	insight.js.zip
Angle fixes

I had been using sin() and cos() in degrees, when they accept radians.
This led to some bizarre results which got covered up in complex code!
updates to recursive sort and naming
incorporating Tom's update for the recursiveSort function.  Will commit test updates in the morning
updated tests to use actual arrays in asserts
removed old merge file
Fix zoom-tooltip configuration issues

Zoom needs to be set up after the axes have first been drawn, but the
zoom pane needs to be the first element in the dom. We now set up the
axes first, but add the zoom pane before the first-child of the dom,
allowing both tooltips and zooming to work simultaneously.
removed another stray merge file
Merge pull request #81 from Stavrakakis/master

Introduce Tables
Merge branch 'upstream'

Conflicts:
	insight.js.zip
Merge branch 'master' into develop

Conflicts:
	insight.js.zip