BUGFIX: changeover to DisplayLib::drawNotifications() wasn't using
correct session variable
Changes to CC terminal hardware integration
===========================================
Note: As of right now, the default behavior has
not changed.

I'm introducing an optional but non-trivial change
to how POS and the credit card terminal communicate.

The original behavior:
1. Terminal receives input from customer
2. Terminal sends message to POS
3. Terminal proceeds to next screen

The new behavior:
1. Terminal receives input from customer
2. Terminal sends message to POS
3. Terminal WAITS
4. POS sends a message back to the terminal
5. Terminal displays requested screen

On the PHP side, the Paycards plugin has a new setting
related to this. The original behavior (default) is called
"Direct"; the new behavior is called "Coordinated". On the
driver side, this is a *compile time* setting. The SPH_SignAndPay_USB
class has a boolean property "auto_state_change". True corresponds
with the original/direct behavior. False corresponds with the
new/coordinated behavior. I realize this is not exactly elegant
but building a configuration gui for one C# setting is not
a high priority.

The main motiviation here is consistency. The response from
POS confirms that it actually *received* the message from the
driver. This can make the terminal respond a bit slower or
even essentially freeze if POS is busy, but I think the trade
off is worthwhile.

A secondary benefit is that the terminal's behavior is more
configurable from the PHP side. For instance, I added a plugin
option related to cashback. If POS is deciding which screens
to show, it can skip over that screen if a particular store
doesn't want it (mine, for instance, does not). Again the
default matches the original behavior and will show
cashback.