Legend tuple handler improve

HandlerTuple now takes optional argument of `ndivide`. With this parameter, the handle area of legend item will be horizontally divided and the handle will be drawn for each subdivided area separately. The default is `ndivide=1` which is backward compatible, but this needs some discussion I guess. This is a PR in progress and and I guess some more improvement is still needed. And suggestion for better keyword name will be appreciated.

This addresses #2018.