Added test cases for extCopy.
Added type checking to prevent putting externals into sequence peered
data.
Had not realized that had a problem with coercing externals to value
types when passing them into functions.  Fixed + added a test case for
it.
Sorted out a circular dependency in imports by delaying import of waldoVariableStore until it was actually used.  Additionally, factored endpoint service thread into own py file.
Have begun emitting and testing endpoint function calls.
Had a bug that caused problems with handling single returns from
message sequences.  (For single return, did not return a single
object, returned a tuple.)
Had a bug with returning the result of an endpoint call immediately.
Essentially, previous emitter auto-generated code that needed to run
on multiple lines, whereas the return code expected a single
expression.  This commit uses a helper function to fix the issue.
Minor typos in type checking code (eg., mis-capitalizations).  Also,
did not deal with wildcard return types correctly when checking return
type of a function call.  Fixed.
Added a test to ensure that when making an endpoint call, passed in
value types are not modified in the passer-inner.
Produced a test case that is causing an error: should not be able to pass peered references across endpoint calls (otherwise, other endpoints might be able to look in on peered state).