message: Add missing function overloads and defaults
diff: @@ -84,6 +84,10 @@ public:
  dictionary() = default;
  + dictionary(dictionary&&) = default;
  +
  + dictionary(const dictionary&) = default;
  +
  dictionary(std::initializer_list<value_type> xs) : xs_(xs) {
  // nop
  }
  @@ -93,6 +97,10 @@ public:
  // nop
  }
  + dictionary& operator=(dictionary&&) = default;
  +
  + dictionary& operator=(const dictionary&) = default;
  +
  // -- iterator access --------------------------------------------------------
  iterator begin() noexcept {
  @@ -189,6 +197,14 @@ public:
  true};
  }
  + iterator_bool_pair insert(value_type kvp) {
  + return emplace(kvp.first, std::move(kvp.second));
  + }
  +
  + iterator insert(iterator hint, value_type kvp) {
  + return emplace_hint(hint, kvp.first, std::move(kvp.second));
  + }
  +
  template <class T>
  iterator_bool_pair insert(string_view key, T&& value) {
  return emplace(key, std::forward<T>(value));
  