Use std::unique_ptr for LpdMessage instead of std::shared_ptr
Use std::unique_ptr for URISelector instead of std::shared_ptr
Use std::unique_ptr for PieceSelector instead of std::shared_ptr
Use std::unique_ptr for StreamPieceSelector instead of std::shared_ptr
Fix array version make_unique is invoked for 1 size_t arg accidentally
BinExpr, UnExpr: Make copies of args so that we can use them with rvalues