Adding a single threaded variables.  Essentially, there are lots of pieces of Waldo data that are event-local, eg., sequence-local data.  Do not need to worry about locking on these pieces of data, nor checking any fancy lock holding during commit.  Still need to test and add compiler support for emitting single threaded variables.
Previous code checked with isinstance against ReferenceBase to determine if a variable was a Waldo object.  Because single threaded Waldo objects did not inherit from ReferenceBase, these were excluded.  Instead, created a new base class, WaldoObj, which both single threaded and multi threaded variables inherit from and use that for the isinstance check.
Changed isinstance tests in waldoExecutingEvent.py to take into account SingleThreaded variables as well as multi threaded.
Gabriel accidentally committed the test log earlier.  Removing it.
Forgot to remove a reference to now-deleted singleThreadReferenceBase (all that code got moved into waldoReferenceContainerBase).
Fixes a few bugs with previous commit (misspellings, misnamings, etc.)
that running through test cases exposed.
Require copy constructors for single threaded variables.
Exposing file system access by extending Waldo variables and performing writes based on their values.
We distinguish two types of objects during the course of completing a
commit.  The first is a priority object.  We will run complete commit
on all of these before running complete commit on the lower priority
objects.  The reason for distinguishing objects into high and low
priority tiers is that some objects may wrap additional data.  For
instance, a folder map object may wrap many files.  At commit time, we
want to serialize the changes to a variable so that can replay those
changes on the file system.  However, for this to work, we need to
ensure that the folder object is complete_commit-ed before any of the
subfiles are.  (Added separate priority mechanism to schedule complete
commits.)
Added a Waldo extension that makes changes to snmp backends when completing the commit.
Began adding stop mechanism for endpoints.  Stopping means that an endpoint will not process any new events.
In certain circumstances, deadlock detection test could hang.  Fixed by making try commit not a daemon thread.
Added a test to ensure that stopping a single side works.
Stop now sends a message to partner to request partner to stop.
connected_callback functions don't need to finish for additional endpoints to connect to a port
Added test cases for stop callbacks.
Both sides exchange messages to synchronize stop and ensure that no events end in partial phase of 2-phase commit.
Added dummy code on connection objects to ensure that can stop endpoints that are not actually connected to other endpoints.
Actually closing open socket.
Merge remote-tracking branch 'origin/master'