Add support for public document channel

Resolves conflict between user `*` channel (meaning access to all documents) and the document `*` channel (meaning available to all users).  Previously only the user `*` channel was enabled - documents added to the `*` channel would only be available to users who also had the `*` channel.

Changed the naming of the document * channel from `*` to `!` for simplicity and clarity.  Access to the `!` channel is being granted to all users by default in auth.rebuildChannels.

Switched to using named constants instead of `*` and `!` where possible, to more easily distinguish between intended usage.
No I don't think so - the intention is for channel.UserStarChannel to refer to users who have been granted admin-style access (the user "/*" channel), and channel.AllChannelWildcard to refer to "all channels this user has access to".