Partially implement UI. Rebase me.