Started implementing UI API, three classes down, lots more to go...