Generic stoppable thread with similar use cases to the standard "threading.thread"