changed the html structure a bit for more flexible and added new functionalities. All text needs updating