Document rules for initialization/cleanup of ZTS globals.

Transfer stesie's comment from the c3512587acf2f6aeeb80d7cc753f08a784c4c86b
commit message so that future additions to v8js_globals maintain the
proper ZTS behavior.
Fix a bunch of memory leaks.

Found by compiling PHP with --enable-debug.
Fix memory leak: The get_properties handler owns the returned hashtable.
Fix double-pop of timer_ctx (and efree from wrong thread).

The timer_ctx was being popped & freed in terminate_execution, from the
timer thread (not the main thread), and then popped again in the main
thread when execution was aborted.  Do all pop/free work in main thread.
Also, remember to pop the timer_ctx when just a memory limit is set.
Don't leak if PHP constructor is called from JavaScript.

Register the weak reference callback to deref and do memory limit
accounting for wrapped PHP objects created from within JavaScript.
Fix memory leak in zend_read_property; also pass correct scope object.
Make PHP object accessors typesafe using V8::AccessorSignature.

This ensures that if you copy the accessor to another object you can't
trigger a segfault.
Free php_v8js_accessor_ctx when we are done with it.
Travis config update: fix for issue #56.

Test against php 5.3, 5.4, and 5.5 -- which incidentally works around
the 'make test always succeeds' bug in php 5.3 and 5.4
(https://bugs.php.net/bug.php?id=60285).

('make test' may always succeed, but we still test against 5.3 and 5.4 to
ensure that we build correctly w/o errors on these php versions.)
Travis config update: compile against minimum supported v8 and most recent v8.
Merge pull request #70 from cscott/travis-fix-3

More memory leak and safety fixes; fix travis configuration.