Building Smart Environments as Agent Workspaces