Add support for log scale axes

This is a PR for #703 
I think it is possible that this could just be a subclass of `AbstractTicker` instead of `AdaptiveTicker` since it does all of its own work in `get_ticks_no_defaults`. In an ideal world we could just use `AbstractTicker([base]]` directly as a log ticker without anything else at all. Practically speaking I think we are going to want to add the MPL functionality which means some specialized code. It think we could change the base class later though.