Replaced raw MySQL database calls with PDO interface, and some general cleanup.

Reworked fof-db.php to use the PDO extension for database abstraction, likely somewhat naively or eccentrically in places, but it is enough to support SQLite, and hopefully will make any future framework refactoring easier.

Corralled straggling sql queries from other files into fof-db.php.  The installation script retains its queries, however, so as not to bloat the db module any further.

Moved most installation behaviors from install.php into new file fof-install.php.

Quieted some strict warnings.

Softened some hard tabs.

Set execute bits on scripts lacking them.
Merge branch 'master' of github.com:RomanSixty/Feed-on-Feeds

Reconciled conflicts in:
	classes/fof-prefs.php
	fof-db.php
	fof-main.php
	prefs.php
Fixed bugs related to PDO overhaul, plus some additional minor changes and cleanup.

The PDO backend now seems to be in a functional state (at least with the SQLite driver) but needs more comprehensive testing.

Newly-created database tables will have foreign key constraints, but existing tables are not yet being upgraded to include such. (TODO)

Config now takes a path for where to store log files et cetera.

fof-db.php is still copiously peppered with debug logging, most of which could stand to be stripped out at some point. (TODO)
Cleanup and fixes.

Discovered that sidebar.php was injecting $_GET[] variables directly into its javascript; wrapped those with json_encode().  Wrapped other js injections in add.php and update.php as well.  Not sure if this fully closes XSS vulnerabilities, but it has to help.

Altered item_tag_table queries to not throw constraint violations on duplicate inserts.

Removed unused user_id parameters from fof_db_get_tag_by_name and fof_db_create_tag.

Quieted more warnings, normalized more indentation.

Replaced font elements with spans in emitted html.

Rearranged fof_subscribe() to be less confusing/repetitive.

Removed several wrapper functions from fof-main.php which simply returned the fof_db_* functions, exempli gratia fof_get_users().

Diddled with add.php and update.php, trying to get outputs prettier and more dynamic.  Not yet completed, so it's even messier than it was, for the time being.. (TODO)
Added ability to open all links in new windows, fixed update+add ajax status, miscellaneous fixes and cleanup.

The new pref 'item_target' controls the target of item title links.

The new plugin 'item_targets' controls the target of links within item contents.

When adding or updating feeds, fof.js now puts the action results next to the correct items, rather than all higglety-pigglety in a pile at the bottom.

Fixed prefs.php to escape values in form, cleaned up some html.

Fixed adv_autotag prefs html.
many minor fixes, miscellaneous beautification

fof_get_feeds() now does full initialization of its returned array, quelling notices and setting reasonable defaults for all entries.

Relative-timestamp strings of many days now round to weeks and years.

Most of sidebar.php was rearranged to consolidate some rendering and pretty-up the emitted html.

Some URLs are now constructed in a more consistent manner, using new function fof_url().

Default items.php view is now 'paged', rather than 'all'.

Moved some repeated javascript from attributes into fof.js functions.

Ajax requests generated in fof.js now uriencode tag parameters.

favicon service request now encodes url.

Fixed typo in fof_db_get_item_count() from pdo rewrite.  However, it seems to tally incorrectly for multiple tags.  I attempted to rewrite it, but SQL is not my bailiwick, so the original is still in place.

Generalized fof_db_get_unread_count() into fof_db_tag_count(), removed wrapper function fof_get_unread_count().

Fixed typo of item_target pref handling in fof_render_item().

Output of fof_view_title() is now more conversational.

Removed unused function fof_db_item_has_tags().
Added support for external authentication.

If FOF_AUTH_EXTERNAL is defined in the config, the active user will be determined by the server environment.
Added new sidebar format. Ajax calls now make of proper types of requests.

Removed 'simple_sidebar' preference, replaced with 'sidebar_style'.

Added 'fancy' sidebar style, which hides some controls behind menus.

Added '?' keyboard command to toggle an ugly legend of keyboard commands.
Added 'r' keyboard command to refresh the sidebar.

Added fof_db_mark_tag_read() to remove unread tag from all items with some other tag.

Ajax calls which change server state now all use POST requests.  Also now use hash objects as request parameters, so that encoding is automatic.
Further fancy sidebar features, now with in-situ updates.

Created new feed-action.php for handling updates of feeds in place from sidebar.

Replaced hard-coded image assets with map, defaults set in fof-asset.php, and overridable in fof-asset-custom.php.

Added image/tag-icon.svg ( sourced from http://commons.wikimedia.org/wiki/File:Black_book_icon.svg ) as a default tag icon.  Added image/spinner.gif and image/warn.gif from unknown sources.

Moved feed table row generation from sidebar.php into fof_render_feed_row() in fof-main.php, to be accessible via ajax.
Fixed sidebar mark-feed-as-read action.

Add the important little bits which perform that task.
Added new sidebar format. Ajax calls now make of proper types of requests.

Removed 'simple_sidebar' preference, replaced with 'sidebar_style'.

Added 'fancy' sidebar style, which hides some controls behind menus.

Added '?' keyboard command to toggle an ugly legend of keyboard commands.
Added 'r' keyboard command to refresh the sidebar.

Added fof_db_mark_tag_read() to remove unread tag from all items with some other tag.

Ajax calls which change server state now all use POST requests.  Also now use hash objects as request parameters, so that encoding is automatic.
Further fancy sidebar features, now with in-situ updates.

Created new feed-action.php for handling updates of feeds in place from sidebar.

Replaced hard-coded image assets with map, defaults set in fof-asset.php, and overridable in fof-asset-custom.php.

Added image/tag-icon.svg ( sourced from http://commons.wikimedia.org/wiki/File:Black_book_icon.svg ) as a default tag icon.  Added image/spinner.gif and image/warn.gif from unknown sources.

Moved feed table row generation from sidebar.php into fof_render_feed_row() in fof-main.php, to be accessible via ajax.
Updated prototype.js to version 1.7.1, from 1.6.0.
Fixed sidebar mark-feed-as-read action.

Add the important little bits which perform that task.
Fixed mark-all-as-read in default style, fixed keyboard navigation.

Fixed incorrect variable in mark-all-as-read link generation of 'default' style in fof_render_feed_row().

Fixed keyboard navigation to use nextElementSibling instead of nextSibling, resolving the issue I introduced by putting line-breaks between item rows in item list html.
Reconciliation of some commits.

A fumbled local rebase required some finagling.  All's well.
Fix minor dross from flubbed previous fix.

Yeah, accidentally checked in a conflict dingus, wups.
Fixes for PDO MySQL driver, plus fixes for SQLite queries.

Miscellaneous bugfixes from pdo migration in MySQL codepaths.

Also fixes for SQLite, which stumbles on multiple VALUES in INSERTs.
Fixed typo in sql, made update-quiet runtime limit configurable.
Tweaks and fixes to sidebar layouts.

Added more explicit classes to elements in all styles, to make custom css easier to wrangle.
Fixed issue with default style showing unread items out of order.
Fixed item tagging js.