Uses a custom deleter for the shared_ptr<Trigger>'s that we create. Will likely evolve to use an allocator so that we can use make_shared's cousin allocate_shared().
6801c2cac2