makes blobstore and event archive depend on a particular user, and adds required authentication and configuration logic.

also separates out the user interface logic.