Added another JSON test.

It seems better to have empty objects for tags, and empty arrays
for nodes/ways/relations than to omit these, as it leads to more
predictable output and less complexity in the client parser.

This commit adds a simple test to check that these keys are
always present.
Fix bug in readonly selection where nothing was selected.

This affects cgimap now because we are actually calling out to
the selection and formatter when the selection is empty, where
we weren't before.
Generate calls to formatter for empty sections.

Previously, a call to `start_element_type` wasn't made if there
were no elements of that type. But we now want this for JSON
support, so this commit adds those calls.

Tests pass.