All basic functionality and UI done