Introducing CLI tv-casting-app for Linux (#8824)

* Introducing Linux CLI based tv-casting-app

* Adding zap/gen files for tv-casting-app

* Updating tv-casting zap/gen

* Including CHIPCommissionableNodeController.h.h in BUILD.gn

* Updates to AdvertiseCommissionableNode call args

* Moving zap/gen files to zzz_generated dir for tv-casting-app

* Making user input to select commissioner for UDC async

* Addressing typos, adding comments for tv-casting-app

* Using constexpr and other minor edits
diff --git a/examples/tv-casting-app/linux/.gn b/examples/tv-casting-app/linux/.gn
new file mode 100644
index 0000000..5d1ce75
--- /dev/null
+++ b/examples/tv-casting-app/linux/.gn
@@ -0,0 +1,25 @@
+# Copyright (c) 2020 Project CHIP Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import("//build_overrides/build.gni")
+
+# The location of the build configuration file.
+buildconfig = "${build_root}/config/BUILDCONFIG.gn"
+
+# CHIP uses angle bracket includes.
+check_system_includes = true
+
+default_args = {
+  import("//args.gni")
+}