      Adapted from StackOverflow: http://stackoverflow.com/questions/3221956 and
      http://www.daniweb.com/programming/software-development/code/484591/a-tooltip-class-for-tkinter
      """
      def __init__(self, widget, *, pad=(5, 3, 5, 3), text="widget info",
                   text_variable=None, waittime=400, wraplength=250):
  
          self._waittime = waittime  # in milliseconds, originally 500
          self._wraplength = wraplength  # in pixels, originally 180
          self._widget = widget
          self._text = text
 
</s> remove         self._waittime = waittime  # in milliseconds, originally 500
        self._wraplength = wraplength  # in pixels, originally 180
 </s> add         self._waittime = wait_time  # in milliseconds, originally 500
        self.wrap_length = wrap_length  # in pixels, originally 180 </s> remove def _get_tooltip(widget, text=None, text_variable=None, wraplength=600):
 </s> add def _get_tooltip(widget, text=None, text_variable=None, wrap_length=600): </s> remove         "Unregister operations and revert redirection created by .__init__."
 </s> add         "de-register operations and revert redirection created by .__init__." </s> remove     def __init__(self, parent, tab_name, helptext, waittime, command=None):
        logger.debug("%s: OptionalPage args: (waittime: %s, command: %s)",
                     self.__class__.__name__, waittime, command)
 </s> add     def __init__(self, parent, tab_name, helptext, wait_time, command=None):
        logger.debug("%s: OptionalPage args: (wait_time: %s, command: %s)",
                     self.__class__.__name__, wait_time, command) </s> remove                                                   "wraplength": wraplength}
    logger.debug("Adding to tooltips dict: (widget: %s. text: '%s', wraplength: %s)",
                 widget, text, wraplength)
    return Tooltip(widget, text=text, text_variable=text_variable, wraplength=wraplength)
 </s> add                                                   "wrap_length": wrap_length}
    logger.debug("Adding to tooltips dict: (widget: %s. text: '%s', wrap_length: %s)",
                 widget, text, wrap_length)
    return Tooltip(widget, text=text, text_variable=text_variable, wrap_length=wrap_length)
                 text_variable=None, wait_time=400, wrap_length=250):
      Adapted from StackOverflow: http://stackoverflow.com/questions/3221956 and
      http://www.daniweb.com/programming/software-development/code/484591/a-tooltip-class-for-tkinter
      """
      def __init__(self, widget, *, pad=(5, 3, 5, 3), text="widget info",
                 text_variable=None, wait_time=400, wrap_length=250):
  
          self._waittime = waittime  # in milliseconds, originally 500
          self._wraplength = wraplength  # in pixels, originally 180
          self._widget = widget
          self._text = text
keep keep keep keep replace keep keep keep keep keep
 GUI fixes
  - Split themes and styles to own module
  - Fix border on console window
  - variable name updates to make pep8 happy 
lib/gui/custom_widgets.py