Make sure `user` actually exists before submitting events using it. Fixes #55.
Don't use simplejson.
Handle files that have never been saved (fixes #57).