Några funktioner saknas, har försökt lägga till kommentarer överallt där funktionalitet inte implementerats...