more commenting + implementation file added