added database persistence functionality, gitignore