[algs] Use std::move instead of hb_move()
diff --git a/src/hb-map.hh b/src/hb-map.hh
index 696cb87..c14a52a 100644
--- a/src/hb-map.hh
+++ b/src/hb-map.hh
@@ -159,7 +159,7 @@
 	if (old_items[i].is_real ())
 	  set_with_hash (old_items[i].key,
 			 old_items[i].hash,
-			 hb_move (old_items[i].value));
+			 std::move (old_items[i].value));
 
     hb_free (old_items);
 
@@ -167,7 +167,7 @@
   }
 
   bool set (K key, const V& value) { return set_with_hash (key, hb_hash (key), value); }
-  bool set (K key, V&& value) { return set_with_hash (key, hb_hash (key), hb_move (value)); }
+  bool set (K key, V&& value) { return set_with_hash (key, hb_hash (key), std::move (value)); }
 
   V get (K key) const
   {
diff --git a/src/hb-meta.hh b/src/hb-meta.hh
index 802509b..a2c3200 100644
--- a/src/hb-meta.hh
+++ b/src/hb-meta.hh
@@ -30,6 +30,7 @@
 #include "hb.hh"
 
 #include <type_traits>
+#include <utility>
 
 
 /*
@@ -174,10 +175,7 @@
 >;
 #define hb_is_cr_convertible(From,To) hb_is_cr_convertible<From, To>::value
 
-/* std::move and std::forward */
-
-template <typename T>
-static constexpr hb_remove_reference<T>&& hb_move (T&& t) { return (hb_remove_reference<T>&&) (t); }
+/* std::forward */
 
 template <typename T>
 static constexpr T&& hb_forward (hb_remove_reference<T>& t) { return (T&&) t; }
diff --git a/src/hb-set.hh b/src/hb-set.hh
index dadcb51..8841427 100644
--- a/src/hb-set.hh
+++ b/src/hb-set.hh
@@ -42,7 +42,7 @@
   ~hb_sparseset_t () { fini (); }
 
   hb_sparseset_t (const hb_sparseset_t& other) : hb_sparseset_t () { set (other); }
-  hb_sparseset_t (hb_sparseset_t&& other) : hb_sparseset_t () { s = hb_move (other.s); }
+  hb_sparseset_t (hb_sparseset_t&& other) : hb_sparseset_t () { s = std::move (other.s); }
   hb_sparseset_t& operator= (const hb_sparseset_t& other) { set (other); return *this; }
   hb_sparseset_t& operator= (hb_sparseset_t&& other) { hb_swap (*this, other); return *this; }
   friend void swap (hb_sparseset_t& a, hb_sparseset_t& b) { hb_swap (a.s, b.s); }
diff --git a/src/hb-vector.hh b/src/hb-vector.hh
index b923921..df6b086 100644
--- a/src/hb-vector.hh
+++ b/src/hb-vector.hh
@@ -255,7 +255,7 @@
   Type pop ()
   {
     if (!length) return Null (Type);
-    return hb_move (arrayZ[--length]); /* Does this move actually work? */
+    return std::move (arrayZ[--length]); /* Does this move actually work? */
   }
 
   void remove (unsigned int i)