Don't we want to start using constructs such as RefPtr here or something like that? We probably really shouldn't have all these raw pointers being passed around everywhere..