First cut at a WorkspaceModel