threaded programs must join()
bugfix use a move ctor to preserve raw pointers

fixes issue #25