snapshot: add Load, Save and cache support
add .gitignore
add main.go