Atom-by-atom nucleation and growth of graphene nanopores