code: def _make_destination_callable(dest):
      
      if callable(dest):
          return dest
      elif hasattr(dest, 'write') or isinstance(dest, string_types):
          return _use_filehandle_to_save(dest)
      else:
          raise TypeError("Destination must be a string, writable or callable object.")
docs: Creates a callable out of the destination. If it's already callable,
      the destination is returned. Instead, if the object is a string or a
      writable object, it's wrapped in a closure to be used later.