Corrected some wording:  XXX places loaded, should of course be XXX events loaded.
Minor wording change on the 'could not be found' text
Minor cosmetic change to Place Source and Event Source editing pages: added some space after the response text in #dialog_loadok
Major overhaul of the data source drivers: the returned exceptions now contain very verbose information about processing: the error string is now a list of strings, an assocarray 'extrainfo' is now present with comuter-parseable version of those state, and the 'details' extrainfo entry gives verbose details about progress, notes of interest while processing, and so on
trivial whitespace fix
More massive driver updates: all drivers returned exceptions: the extrainfo now includes 'details' which is an arbitrary list of strings; this makes for arbitrary verbose debugging output
PlaceDataSource: Google Spreadsheet: updated the inline docs to have an URL to a sample spreadsheet... then expanded the URLs that the driver will support
PlaceDataSource root driver: recategorizeAllPlaces() needed to handle there being 0 results. If there were 0, there would be no messages, so throwing the proper exception would fail. It now returns the full message (including extrainfo) at all times
Place DataSource and EVent DataSource detail/edit page: these now handle the JSON-encoded structures returned from the drivers Exceptions, and render both the summary and extrainfo-details into a nice panel, with ability to toggle details