Move apidb-specific files to the backend/apidb dir

Includes also adjusted
Refactor changeset_cache out of formatters

The changeset cache is now in the apidb-specific files, not the formatters.

There are still cache-specific details in main.cpp, but they don't impede
adding backends where the idea of a changeset cache is not applicable.
Add pgsnapshot backend files

The pgsnapshot backend is currently a duplicate of the apidb
writable backend and doesn't work on a pgsnapshot database
but the files are created.
Work in progress on pgsnapshot

stripped out most apidb specific sql

started on node call, worked most of the way there but looking at
how to avoid changeset tables
Remove more old apidb code
Work in progress on pgsnapshot backend
Merge changeset_cache_refactor into snapshot_nodes

Conflicts:
	src/main.cpp
Place psgnapshot files in their own group in the automake file.

This should hopefully reduce merge conflicts
Finish off the pgsnapshot node call

Unfortunately hstores are not dealt with ideally, but this may be a limititation of libpqxx
Remove unneeded variables
Add way/# call. This does not do way/#/full or anything, just the bare way call