Remove is_linked index as it's not actually needed.
Use a separate field to indicate whether a record is "published by implication"

Just to save changing the semantics of the "published" flag, which are already
a bit hairy.  We merge these two booleans in the indexer so the public view can
work as it did before (only showing indexed items whose "published" field is
true).