Adjust width hueristic for Numeric Axis.

Now draws all ticks and takes the longest, rather than speculating
as to which will be the longest.

Added tests for width() and height() on Numeric Axis.

Added some documentation for Custom Formatter.

Close #604.
Add missing semicolons.
Merge branch 'master' into 604-numeric-axis-width
Merge branch 'master' into 604-numeric-axis-width
Switch to using TextMeasurer.
Merge branch 'master' into 604-numeric-axis-width
Adjust calculation to account for negative signs and variable-length formatters.
Merge branch 'master' into 604-numeric-axis-width

Conflicts:
	plottable.d.ts
	plottable.js
	src/utils/formatters/customFormatter.ts
Add in Dispatchers.

Dispatchers are essentially a higher-order proxy for event listeners.
They namespace event registration, so multiple dispatchers can listen
for the same event on the same element.

This is part of the setup for better Interactions in the future.
Rather than create ad-hoc listening structures in each Interaction,
in the future Interactions should use Dispatchers to listen for
events and respond accordingly.

Currently there is only the base Dispatcher and Mouse Dispatcher, but
more will be added in the future.
Merge branch 'master' into add-dispatchers
Merge branch 'master' into 604-numeric-axis-width
Merge branch 'master' into 604-numeric-axis-width
add more tests
clearbox working
clearbox working
Simplify calculation, add gutter(), remove old axisTests.ts

The calculation now just takes the max over all tick lengths.
While this will truncate some things if the user zooms in, it will
work correctly for static cases.

gutter() has been added to set the amount of extra space between
the tick labels and the edge of the axis. gutter() should now
be the preferred way to give extra room for decimal places on
zoom, rather than explicitly setting the width with width().

axisTests.ts was still hanging around, so I got rid of it.
Merge branch 'master' into 604-numeric-axis-width

Conflicts:
	plottable.d.ts
	plottable.js
	test/tests.js
Merge branch 'master' into add-dispatchers

Conflicts:
	test/tests.js
onload populate dropdown with branches from git
fix typo