finish storage implementation and saving settings