Added buttonCallback (#2)
     This will allow total customization of the button whenever an item is selected.
     When this functino is defined, it will be used instead of buttonLabel