Branch for SpiderMonkey 1.8.0 integration

Subversion-branch: /branches/js-branch
Subversion-revision: 2140
Commit js-1.8.0 with project files for vc2005 and vc2008

Subversion-branch: /branches/js-branch
Subversion-revision: 2141
Ignore Debug and Release in js/vc2008

Subversion-branch: /branches/js-branch
Subversion-revision: 2142
AeonEngine abstract interface and concrete implementation (still
skeletal) for AeonJSEngine.

Subversion-branch: /branches/js-branch
Subversion-revision: 2143
Finished core AeonJSEngine semantics, equivalent to hl7daemon JSEngine
functionality in r530:
* One-shot evaluation of strings and files
* Ability to cache compiled bytecode in CompiledScript objects from
  strings and files
* Execute compiled scripts with or without return results in qstring,
  int, unsigned int, double, or bool formats.

Subversion-branch: /branches/js-branch
Subversion-revision: 2144
Added CMake stuff for JS.

Subversion-branch: /branches/js-branch
Subversion-revision: 2145
Fixed a comment.

Subversion-branch: /branches/js-branch
Subversion-revision: 2148
Merge from trunk

Subversion-branch: /branches/js-branch
Subversion-revision: 2150
* AeonEngine now provides an error/warning output logging facility to
  daughter classes.
* Pull in fix from hl7daemon: ensure temp JSString is GC-rooted in
  executeWithResult, in the unlikely case JS_GetStringBytes causes
  garbage collection.

Subversion-branch: /branches/js-branch
Subversion-revision: 2151
* Added ae_jsutils module
* Finished up context callback and error reporter
* Started work on core Aeon class natives for manipulation of the
  interpreter state

Subversion-branch: /branches/js-branch
Subversion-revision: 2152
* Added AeonJS_SafeInstanceOf
* Renamed AeonJS_SafeGetStringBytes

Subversion-branch: /branches/js-branch
Subversion-revision: 2158
Merge from trunk to pull in today's 3.40.25 changes.

Subversion-branch: /branches/js-branch
Subversion-revision: 2159
Merge from trunk (damn I gotta do this more often...)

Subversion-branch: /branches/js-branch
Subversion-revision: 2204
* Added AeonEngine::evaluateStringLogResult
* Moved AeonJS utilities into an AeonJS namespace
* Created AeonJS::AutoNamedRoot class

Subversion-branch: /branches/js-branch
Subversion-revision: 2206
AutoNamedRoot semantic change: rooted pointer needs to have the same
lifetime as the AutoNamedRoot, so that it can be passed into and
initialized inside other functions. Easiest way to do this is to root a
class member instead of a pointer passed in by address. Also eliminates
need for stupid pointless reinterpret_cast overloads of
AutoNamedRoot::init.

Subversion-branch: /branches/js-branch
Subversion-revision: 2207
Overload of AeonJS::SafeGetStringBytes that takes an AutoNamedRoot &.
Simplifies dealing with JSString return values from JSAPI.

Subversion-branch: /branches/js-branch
Subversion-revision: 2208
* AeonJS::PrivateData base class for all JSObject private data.
* Proxy and ProxyRelationship hierarchy for control of relationships
  between objects with arbitrary dynamic allocation lifetimes. Employed
  in AeonJS::PrivateData for optional attachment to an external object
  not under the control of the virtual machine. Should easily generalize
  to other potential Aeon engines.

Subversion-branch: /branches/js-branch
Subversion-revision: 2209
Add m_proxy to vc2008 project file.

Subversion-branch: /branches/js-branch
Subversion-revision: 2210
AeonEngine::EvalContext class for generic support of evaluation context
objects. Subclass in an AeonEngine descendent to provide support in that
particular language (TODO: AeonJSEngine::EvalContext).

Subversion-branch: /branches/js-branch
Subversion-revision: 2213
Away with pointless complexity and unneeded abstractions!

Subversion-branch: /branches/js-branch
Subversion-revision: 2215