Reimplemented targets for things and created a race condition.
I'll keep thinking about the best way to implement it, but I think,
short of using smart pointers (which I might end up doing), this is
the probably just about the best way to do it.