Wasn't this part of the problem, passing an instance through to the thread?