Modified Component class so that it now stores a watch_ptr to the parent entity rather than a raw pointer.