Pretty awesome how much simpler it is to understand this new library's code compared to the old stuff at **https://github.com/boost-ext/di** with C++14. I've seen something in the code that looks like it might be a small bug. The `ctor_traits<std::unique_ptr<T>>` returns `std::shared_ptr` instead of `std::unique_ptr`. Huge thanks for all your work!