the View registers itself through DocumentPrivate::registerView()
for now, create exactly one view for each document