More implementation.

FIXME: I need to sort out why the thread funcs are not firing.