LP#1253163: Materialize authority headings

There seems to be a bug in Postgres 9.3+ that does not like the
circuitous route we take to indexing authority headings.  So, we
get around this by storing the actual heading values instead of
indexing a function over the MARC.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Ben Shum <bshum@biblio.org>
LP#1253163: Make authority functions more truthful

One discovery we made on this bug was that PG can break if we
conveniently label functions as IMMUTABLE when they are now.  Let's
go ahead and reclass some authority functions as STABLE STRICT to
better fit reality.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Ben Shum <bshum@biblio.org>
LP#1253163: Replace dropped unique index, if we can

Not sure if this is necessary, but since we drop this index, we might
want to make an effort to recreate it if we can (but don't die if we
cannot).

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Ben Shum <bshum@biblio.org>
LP#1253163: stamping upgrade for authority.in-line-headings

Signed-off-by: Ben Shum <bshum@biblio.org>