Add a way to specify custom click data per element

Works by adding a clickData attribute to the options object.  If the element passed in is a function, the function is called, passing in the selected element(s) as well as the click type, for context.

Custom logic can be included in the callback for custom data use-cases.