Player client: controller/view design