> Heap allocations should be managed with an RAII class
Isn't this what a `unique_ptr` is (a RAII class that manages Heap allocation)?
> sink functions" should take an rvalue reference (which semantically means "take ownership of this parameter").
Why not take by value?