[cleanup] remove app/color

MS-2282 #done

TEST =
- fx set x64 --packages topaz/packages/buildbot
- fx build

Change-Id: Ib079644514a12a54cd51a56a82cd7d69a0e9b187
diff --git a/README.md b/README.md
index 00fe988..84d23d1 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,17 @@
 # Topaz
 
-This is the layer where first-party mods (modules) live.
-See [Flutter Module Development](
-https://fuchsia.googlesource.com/docs/+/HEAD/development/languages/dart/mods.md)
-.
+Topaz augments system functionality by implementing interfaces defined by underlying layers. Topaz contains four major categories of software: modules, agents, shells, and runners.
+
+For example, modules include the dashboard, and runners include the Web, Dart, and Flutter runners.
+
+# Removed Components
+
+Looking for something that used to be in this repository? The list below
+provides a code location and sha that can be used to checkout dead code that has
+been removed. Please note, the code will most likely be a reference only. It is
+unlikely the code will build or work correctly. Code can be checked out with:
+
+        git checkout <sha> -- $FUCHSIA_DIR/<location>
+
+* topaz/app/chat: 9f6c31d2ceb8353f229a9ef6b53ba2386ff31867
+* topaz/app/color: 5a023ccb054104846e3e913951bcc7dc277d2274
diff --git a/app/color/BUILD.gn b/app/color/BUILD.gn
deleted file mode 100644
index f7e339b..0000000
--- a/app/color/BUILD.gn
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 2016 The Fuchsia Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-import("//topaz/runtime/flutter_runner/flutter_app.gni")
-
-flutter_app("color") {
-  main_dart = "lib/main.dart"
-
-  meta = [
-    {
-      path = rebase_path("meta/color.cmx")
-      dest = "color.cmx"
-    },
-  ]
-
-  sources = [
-    "src/color_model.dart",
-  ]
-
-  deps = [
-    "//third_party/dart-pkg/git/flutter/packages/flutter",
-    "//topaz/public/lib/app/dart",
-    "//topaz/public/lib/app_driver/dart",
-    "//topaz/public/lib/schemas/dart",
-    "//topaz/public/lib/widgets/dart",
-  ]
-}
diff --git a/app/color/analysis_options.yaml b/app/color/analysis_options.yaml
deleted file mode 100644
index c7bbb17..0000000
--- a/app/color/analysis_options.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-# Copyright 2017 The Fuchsia Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-include: ../../tools/analysis_options.yaml
diff --git a/app/color/lib/main.dart b/app/color/lib/main.dart
deleted file mode 100644
index 6f032fe..0000000
--- a/app/color/lib/main.dart
+++ /dev/null
@@ -1,94 +0,0 @@
-// Copyright 2018 The Fuchsia Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-import 'dart:async';
-import 'dart:math' show Random;
-
-import 'package:flutter/material.dart';
-import 'package:lib.app.dart/logging.dart';
-import 'package:lib.app_driver.dart/module_driver.dart';
-import 'package:lib.schemas.dart/com.fuchsia.color.dart';
-import 'package:lib.widgets.dart/model.dart'
-    show ScopedModel, ScopedModelDescendant;
-
-import 'src/color_model.dart';
-
-/// The amount of time between color updates.
-const Duration _kUpdateDuration = const Duration(seconds: 5);
-
-/// Used to translate raw Entity data into structured values.
-final ColorEntityCodec _kColorCodec = new ColorEntityCodec();
-
-/// Main entry point to the color module.
-void main() {
-  setupLogger(
-    name: 'color',
-  );
-
-  /// The [ColorModel] holds UI state and automatically triggers a re-render of
-  /// Flutter's widget tree when attributes are updated.
-  ColorModel model = new ColorModel();
-
-  /// The [ModuleDriver] provides an idiomatic Dart API encapsulating
-  /// boilerplate and book keeping required for FIDL service interactions.
-  ModuleDriver module = new ModuleDriver();
-
-  /// Use [ColorEntity#watch] to access a stream of change events for the
-  /// 'color' Link's Entity updates. Since this module updates it's own Entity
-  /// value the `all` param is set to true.
-  module.watch('color', _kColorCodec, all: true).listen(
-        (ColorEntityData data) => model.color = new Color(data.value),
-        cancelOnError: true,
-        onError: handleError,
-        onDone: () => log.info('update stream closed'),
-      );
-
-  /// When the module is ready (listeners and async event listeners have been
-  /// added etc.) it is connected to the Fuchsia's application framework via
-  /// [module#start()]. When a module is "started" it is expressly stating it is
-  /// in a state to handle incoming requests from the framework to it's
-  /// underlying interfaces (Module, Lifecycle, etc.) and that it is in a
-  /// position to handling UI rendering and input.
-  module.start().then(handleStart, onError: handleError);
-
-  runApp(new ScopedModel<ColorModel>(
-    model: model,
-    child: new ScopedModelDescendant<ColorModel>(
-      builder: (BuildContext context, Widget child, ColorModel model) {
-        return new Container(color: model.color);
-      },
-    ),
-  ));
-}
-
-/// Generic error handler.
-// TODO(SO-1123): hook up to a snackbar.
-void handleError(Object error, StackTrace stackTrace) {
-  log.severe('An error ocurred', error, stackTrace);
-}
-
-///
-void handleStart(ModuleDriver module) {
-  /// Once the module is ready to interact with the rest of the system,
-  /// periodically update the color value stored in the Link that the module was
-  /// started with.
-  log.info('module ready, link values will periodically update');
-
-  final Random rand = new Random();
-
-  /// Change the [entity]'s value to a random color periodically.
-  new Timer.periodic(_kUpdateDuration, (_) {
-    ColorEntityData value = new ColorEntityData(
-        value: new Color.fromRGBO(
-                rand.nextInt(255), // red
-                rand.nextInt(255), // green
-                rand.nextInt(255), // red
-                1.0)
-            .value);
-
-    module.put('color', value, _kColorCodec).then(
-        (String ref) => log.fine('updated entity: $ref'),
-        onError: handleError);
-  });
-}
diff --git a/app/color/lib/src/color_model.dart b/app/color/lib/src/color_model.dart
deleted file mode 100644
index 0211efc..0000000
--- a/app/color/lib/src/color_model.dart
+++ /dev/null
@@ -1,20 +0,0 @@
-// Copyright 2018 The Fuchsia Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-import 'package:flutter/material.dart';
-import 'package:lib.widgets.dart/model.dart';
-
-/// The UI Model for state that can be updated outside the boundary of this
-/// module via Link updates.
-class ColorModel extends Model {
-  /// Gets the color.
-  Color get color => _color;
-  Color _color = Colors.pink[800];
-
-  set color(Color value) {
-    _color = value;
-    // Update the UI.
-    notifyListeners();
-  }
-}
diff --git a/app/color/meta/color.cmx b/app/color/meta/color.cmx
deleted file mode 100644
index efbee83..0000000
--- a/app/color/meta/color.cmx
+++ /dev/null
@@ -1,22 +0,0 @@
-{
-    "program": {
-        "data": "data/color"
-    },
-    "sandbox": {
-        "services": [
-            "fuchsia.cobalt.LoggerFactory",
-            "fuchsia.fonts.Provider",
-            "fuchsia.logger.LogSink",
-            "fuchsia.modular.Clipboard",
-            "fuchsia.modular.ContextWriter",
-            "fuchsia.modular.ModuleContext",
-            "fuchsia.netstack.Netstack",
-            "fuchsia.sys.Environment",
-            "fuchsia.ui.input.ImeService",
-            "fuchsia.ui.policy.Presenter",
-            "fuchsia.ui.scenic.Scenic",
-            "fuchsia.ui.viewsv1.ViewManager",
-            "fuchsia.wlan.service.Wlan"
-        ]
-    }
-}
diff --git a/app/color/pubspec.yaml b/app/color/pubspec.yaml
deleted file mode 100644
index 9bc843b..0000000
--- a/app/color/pubspec.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-# Copyright 2017 The Fuchsia Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-name: color_app
\ No newline at end of file
diff --git a/packages/prod/all b/packages/prod/all
index ac63595..2b5c450 100644
--- a/packages/prod/all
+++ b/packages/prod/all
@@ -2,7 +2,6 @@
     "imports": [
         "topaz/packages/prod/bluetooth_settings",
         "topaz/packages/prod/chromium",
-        "topaz/packages/prod/color",
         "topaz/packages/prod/device_settings",
         "topaz/packages/prod/display_settings",
         "topaz/packages/prod/dart",
diff --git a/packages/prod/color b/packages/prod/color
deleted file mode 100644
index 8f3673b..0000000
--- a/packages/prod/color
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-    "packages": [
-        "//topaz/app/color"
-    ]
-}