Add max thread and min thread information to "xengine status" region console command
Datasnapshot: added "secret" to the registration/deregistration query so that data providers can verify authenticity if they want.
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
refactor: rename ScriptInstance.m_CurrentResult to m_CurrentWorkItem to make it more understandable as to what it is and what it does (hold a thread pool work item for a waiting of in-progress event)

Also add other various illustrative comments
Minor sanity check on simulation agent handler (content type)
Teleports: bounce off repeated requests of teleporting the same agent. Some scripts do that, and that fails the whole thing.
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
Alleviate an issue where calling Thread.Abort() on script WorkItems can fail to release locks, resulting in a crippled simulator.

This seems to be a particular problem with ReaderWriterLockSlim, though other locks can be affected as well.
It has been seen to happen when llDie() is called in a linkset running more than one script.
Alleviation here means supplying a ScriptInstance.Stop() timeout of 1000ms rather than 0ms, to give events a chance to complete.
Also, we check the IsRunning status at the top of the ScriptInstance.EventProcessor() so that another event doesn't start in the mean time.
Ultimately, a better solution may have to be found since a long-running event would still exceed the timeout and be aborted.
Fix a problem where multiple near simultaneous calls to llDie() from multiple scripts in the same linkset can cause unnecessary thread aborts.

The first llDie() could lock Scene.m_deleting_scene_object.
The second llDie() would then wait at this lock.
The first llDie() would go on to remove the second script but always abort it since the second script's WorkItem would not go away.
Easiest solution here is to remove the m_deleting_scene_object since it's no longer justified - we no longer lock m_parts but take a copy instead.
This also requires an adjustment in XEngine.OnRemoveScript not to use instance.ObjectID instead when firing the OnObjectRemoved event.
Remove duplication of m_RunEvents and Running
minor: correct indentation levels
Simplify some logic in the ScriptInstance constructor - running is set to false in both if/else branches
Remove property/field duplication in ScriptInstance where it's unnecessary.
Hack around https://jira.secondlife.com/browse/VWR-28570
More hacking around viewer bug
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
Adds a new script command 'modInvoke' to invoke registered functions
from region modules. The LSL translator is extended to generate the
modInvoke format of commands for directly inlined function calls.

A region module can register a function Test() with the name "Test".
LSL code can call that function as "Test()". The compiler will translate
that invocation into modInvoke("Test", ...)
Protect the scriptmodulecomms interface.
Revert "More hacking around viewer bug"

This reverts commit 10731732b4d40ec9d9e7a21f406a3d2b5dfc1075.
Revert "Hack around https://jira.secondlife.com/browse/VWR-28570"

This reverts commit 697ac7fd9de244cb3b25ff8576838fd323b257c3.