Modified return value type of Helper::QueryInterface.
Use make_unique (C++14) instead of direct using unique_ptr.
Reduced the use of smart pointers.