Added support for save state files using a combination of Go's
archive/zip and encoding/json packages.  Save state files can be written
to disk with a `.nst` extension by pressing F1 and loaded from disk by
pressing F5.  Save state files are `.zip` archives created with
`zip.NewWriter` containing two files, a `meta.json` which currently just
contains a `Version` field of `0.1`, and a `state.json` which contains
the NES type converted to a JSON object using a `json.Encoder`.

Quite a few fields had to become exported in order to easily use the
JSON encoder, therefore quite a few files have changed although for the
most part no true code changes were required.

README.md has been updated to indicate support for save states and lists
the keybindings.