Restructure recent-edits, minor styling updates
Make non-map pages pretty with an image
Fix close button on map popup, header sizes/margins
Add json_field.py, with support for get/set via attribute path

For example, field_name "config|foo" refers to the "foo" property in the JSON field "config".
Deeper lookups also work, e.g. "config|foo|bar|baz".
form_extras.py ("field" template tag) supports values stored in JSON fields

Also:
* misc. support for admin site
* recover from merge
DRY out use of JSON error return utilities

* Move JSON error return utilites to util.py
* Fix a bug in field/ul.html template
* Fix URL in browseTreesMode.js
inlineEditForm.js no longer requires endpoints to include "ok" or "error" in returned JSON

Also:
* Fix lint
Use DotDict.py for stronger JSON field access

Also:
* Switch to "instance.config.foo.bar" (instead of "instance.config|foo|bar")
* Tweak to inlineEditForm to help debug errors
Include JS color picker library jscolor
Instance._make_config_property() supports dotted keys

Also fix up DotDict.py
* Improve doc
* DRY up
* Fix lint

DRY up DotDict.py and fix lint
Merge branch 'topic/default-styling'

Conflicts:
	opentreemap/treemap/templates/treemap/plot_detail.html
Merge pull request #368 from RickMohr/json-field-support

Improve form editing support
Merge pull request #392 from RickMohr/specify-custom-colors

Specify custom colors
Add sat and hybrid views and switcher. Fixes #335.
JSONField now only DotDict-ifies dictionaries

Fixes #401
Merge pull request #404 from RickMohr/allow-lists-in-json-fields-again

JSONField now only DotDict-ifies dictionaries
Merge pull request #399 from ahinz/fix/335/add-sat-and-hybrid-map-views

Add satellite and hybrid views and switcher
Fade non-matched search results. Fixes #383.
Merge pull request #403 from ahinz/fix/383/fade-out-search-result-dots

Fade non-matched search results. Fixes 383.
Fix some lint