Admin functions

This adds the functionality for admin users to hide datasets from the public listing.

Rather than specify admin emails, I've changed to use user ids (feels safer as we don't confirm changes of email addresses).

Resolves #551