Revised transaction ending procedure. Details follow.

I separated the end of the transaction into two different tasks.

First, end the current transaction and print a receipt. This is what
ajax-end.php does now. It rotates data out of LTT in preparation
for the next transaction but does NOT send transaction data to the
server.

Second, send transaction data to the server via a new callback,
ajax-transaction-sync.php.

There is a method to this madness. Right, now it helps get the receipt
out faster since printing is situated at the very end of ajax-end.php
in case of any printer error that locks the script. Eventually, I
want to make the sync process more background-y. With some revisions to
how sessions are handled, I think I can make sending data to the server
a truly parallel action that can run in the background without causing
any session locking or contention.
Initial draft module system for editing items
Use item modules to save data as well as show forms
FIXES for extra_config.  Old pathdir for BasicCCModule and used elseif with no IF clause.
Using the akt-immutable-settings branch here, all looks OK so far….
Module for managing hobart scale info on products
Fully modular prodFunction.php
Merge pull request #125 from CORE-POS/item-modules

Item modules
Support for PDO on the lane, singleton local DB connection
Closer to a full Postgres implementation
New, FanniePage based item editor
Merge pull request #126 from CORE-POS/oo-fannie-pages

New, FanniePage based item editor
Compatibility method db_close()
FIX: dynamic menu setting not applied correctly
Merge pull request #127 from CORE-POS/bugfix-20130228-dy-menu

FIX: dynamic menu setting not applied correctly
Experimental branch. When UPC requires a weight, set the UPC in
session SNR. When a weight is registered via DisplayLib::scaledisplaymsg,
the UPC is returned as part of the input. This way, I can "scan"
the UPC as soon a weight gets set. The response should be quicker
than retry-ing the UPC at set intervals especially when session
contention/locking is taken into account.
BUGFIX: verify array index exists
BUGFIX: method changed to public, declare $itemize
Merge pull request #128 from CORE-POS/bugfix-2013-03-05

BUGFIX: method changed to public, declare $itemize
BUGFIX: variable initialization should not be commented out

(Yes, I know. It's master. This does not merit a branch)
Merge pull request #118 from CORE-POS/akt-end-split

REVIEW: Change to end of transaction