--[[
	Controller that sets different user interface views for the client. Listens to player state updates, creating and
	destructing views as necessary.
]]

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local StarterGui = game:GetService("StarterGui")
local Players = game:GetService("Players")

local Logger = require(ReplicatedStorage.Dependencies.GameUtils.Logger)

local views = {}
local currentView

local UIController = {}
