Delvis delat upp i cpp och h filer