Completed basic UI and added callback framework