On second though, I don't like automatically tracking weak_ptr<signals2::trackable> and weak_ptr<signals2::signal>.