chunky refactor in core.clj. switched snaps and curr-db to atoms from agents