Implement a more visually pleasing divvy()

The user sets tick_division_type to one of the below module names (or their own module). This is loaded on the first call to divvy() and _real_divvy() is executed.

Divvy() was moved to Axis.pm from Data::Range.pm because it is a presentation side effect rather than something to do with the data itself. Producing a logarithmic display for the graph does not change the data which could be used in more than one location.

LinearRounded produces values which are visually pleasing (nice whole figures) while keeping the number of ticks somewhere around what the user requested (default of 5).

Exact is the old mechanism of dividing the space into equal tick segments.

LinearExpandGraph is an experimental mechanism taken from branch divvy_strategy. In my opinion LinearRounded produces better results but having multiple examples shows that the module loading functions correctly.
Remove debug prints
Do not adjust tick count.
Correct handling of range->lower().

It was mistakenly cutting off the display of the bottom of the chart by adjusting to the lowest tick. The graph may be drawn below the lowest tick.
Merge pull request #14 from rbt/feature/divvy

Feature/divvy