users.ghost
The default (false) is not strictly required, and this lets us avoid a potentially expensive migration
ghost
Rather than using a separate `ghost` state. This lets us have the benefits of both ghost and blocked users (ghost: true, state: blocked) without having to rewrite a number of queries to include cases for `state: ghost`.