Tagged with random access iterator tag

array_ptr is now a derivation of std::iterator in the random access
iterator tag.