Tweak role description helper

* Non-ministerial roles do not have public-facing pages, causing this
helper to break when a role is replaced by a non-ministerial role (the
url helpers for it do not
exist).

* Handle active roles that are unoccupied to maintain the existing
behaviour