Changed the config format to JSON. This is the first of several steps of the transision from a standalone application to a server/client architecture. Introduced Server and Commands. These are preparations for the upcoming JSON API using the bottle framework.
By adding a new observer, the app server now quits an old observer thread with the same name. This is how observers can be replaced during runtime. Also the AdStore is now thread safe, although all threads share the same locks for now even if the store files are different.
JSON config example
Integrated the bottle.py mini-framework to get JSON payload over the webz.
Added support for JSON responses by Commands. Also started to update the README.md. Fixed a bug in bottle that wouldn't handle a list for a JSON response. Implemented a 'remove_observer' command.
Implemented get_observer and list_commands commands. Also fixed the html email formatting. Some changes to README.md
README test
README test
README.md upadtes
Updated unit tests after renaming a view things. Also purged the files from the old configuration stuff.