Added some changes for gitignore.

Added flag init logic and flag validation.

Added logic to save a json snapshot, based on snapshot.
Creating symlink to the newly created json file.