[iter] Remove hb_sorted_iter_t

Not enforcing it using type hierarchy.
diff --git a/src/hb-array.hh b/src/hb-array.hh
index ff93e11..70053b4 100644
--- a/src/hb-array.hh
+++ b/src/hb-array.hh
@@ -193,11 +193,13 @@
 
 template <typename Type>
 struct hb_sorted_array_t :
-	hb_sorted_iter_t<hb_sorted_array_t<Type>, Type&>,
+	hb_iter_t<hb_sorted_array_t<Type>, Type&>,
 	hb_array_t<Type>
 {
-  typedef hb_sorted_iter_t<hb_sorted_array_t<Type>, Type&> iter_base_t;
+  typedef hb_iter_t<hb_sorted_array_t<Type>, Type&> iter_base_t;
   HB_ITER_USING (iter_base_t);
+  enum { is_random_access_iterator = true };
+  enum { is_sorted_iterator = true };
 
   hb_sorted_array_t () : hb_array_t<Type> () {}
   hb_sorted_array_t (const hb_array_t<Type> &o) : hb_array_t<Type> (o) {}