Create a register of persons with references

You can achieve this using the glossaries package:

\documentclass{report}

\usepackage{datatool-base}% provides \DTLinitials
\usepackage[colorlinks]{hyperref}
\usepackage{glossaries}

% Syntax: \newperson{label}{title}{forenames}{surname}{affiliation}
\newcommand*{\newperson}[5]{%
  \newglossaryentry{#1}%
  {%
     name={#2\space\DTLinitials{#3}\space#4},
     sort={#5},% sort on affiliation
     description={#5},% affiliation
     text={#2\ #4},% title \space surname
     user1={#2},% title
     user2={#3},% forenames
     user3={#4}% surname
  }%
}

\let\Ptitle\glsuseri
\let\Pforenames\glsuserii
\let\Psurname\glsuseriii

\newglossarystyle{person}%
{%
   \glossarystyle{list}%
   \glsnogroupskiptrue
   \renewcommand*{\glossaryentryfield}[5]{%
    \item[]\glsentryitem{##1}\glstarget{##1}{##2},
       ##3 (p.~##5)}%
}%

\makeglossaries

\newperson{miller}{Prof.\ Dr.}{Marmaduke}{Miller}{University of M}
\newperson{foobar}{Dr.}{Aardvark}{Foobar}{University of M}
\newperson{foo}{Mr}{Bar}{Foo}{University of Z}

\begin{document}

The screwdriver was turned by \gls{miller}.
The hammer was whacked by \gls{foobar}.
\Gls{foo}['s] thumb throbbed.

\printglossary[title={Register of Persons},style=person]

\end{document}

Alas, nameauth will not do the forward referencing. It will respect the index entry links back to the pages in question.

Here is a MWE of what nameauth does generally accomplish. What you get is a focus on auto-formatting of names. The package is meant (mostly) for printed matter. Thanks, however, for this post. It gives me an idea for expansion of features at some point.

\documentclass[11pt]{article}
\usepackage{nameauth}
\usepackage{makeidx}
\usepackage[colorlinks]{hyperref}

\title{nameauth test}
\author{}
\date{}
\frenchspacing

\begin{nameauth}
  \<Miller & Prof. Dr. M. & Miller & >
  \<Foobar & Dr. A. & Foobar & >
  \<Foo & B. & Foo & >
\end{nameauth}

\TagName[Prof. Dr. M.]{Miller}{, University of M}
\TagName[Dr. A.]{Foobar}{, University of M}
\TagName[B.]{Foo}{, University of Z}

\makeindex

\begin{document}

\maketitle

\section{Section 1}

The screwdriver was turned by \LMiller.
Do you call him \SMiller[Martin] or just \Miller?
I liked \LMiller[Mr.]'s lectures.
Not so much those of \LFoobar.
I thought \LFoobar[Mr.] was a little disjointed in his presentation.
I hear the new up-and-comer is \LFoo.
Do you know \Foo{} like I know \Foo?

\clearpage

\section{Section 2}

The screwdriver was turned by \LMiller.
Do you call him \SMiller[Martin] or just \Miller?
I liked \LMiller[Mr.]'s lectures.
Not so much those of \LFoobar.
I thought \LFoobar[Mr.] was a little disjointed in his presentation.
I hear the new up-and-comer is \LFoo.
Do you know \Foo{} like I know \Foo?

\clearpage

\printindex

\end{document}