new sqlite3-backed key-value store implementation

The shelve-backed version still did not reliably persist data even
after adding writeback=True to the open() call, so I replaced it
with sqlite3, which I am more familiar with.
fix filtering of changeset information

After a transaction was applied, the resulting changeset was filtered
by the websocket handler that the transaction was submitted to instead
of the handler that the respective changeset was sent out with.

This resulted in new waypoints and annotations appearing for both
the red and the blue coalition.

This fixes one cause of https://github.com/jboecker/dcs-mission-planner/issues/23.
add service/down to .gitignore
ensure that a new generated password is different from the last 5
add spectator URLs. Run "python serve.py upgrade" to upgrade existing instances.
Merge branch 'master' into 373-changes