Improve code documentation
Move more abc::map code to abc::detail::map_impl