':param callable func:
The function to be run in separate thread.
Calls :data:`func` in separate thread and returns immediately.
Accepts arbitrary positional and keyword arguments which will be
passed to :data:`func`.'

def __init__(self, func, *args, **kwargs):

    super(Future, self).__init__()
    self._func = func
    self._args = args
    self._kwargs = kwargs
    self._result = None
    self.start()
