fix segfault in GlobalPropertyGetter() (closes #89)

GlobalPropertyGetter() is a static function. It can be invoked on
a context which has already been disposed off.

It turned out that there were two possible segfault reasons.

The most obviuos one was NULL pointer dereferencing.

However, there is no way to check whether the context is alive by
examining content of it or its sandbox. Both could look valid, but cause
segfaults in node. As a woraround, we add a self-reference which we clear
on destruction. A valid self-reference is a solid indication of a
valid context now.
> If the destructor has fired, but we still have a pointer to this object, is it not unsafe to dereference that pointer to check alive?

It could also segfault, if the page containing the object is unmapped from process address space. There are tools to check for that condition, but they are platform-specific. Eg. [mincore()](http://man7.org/linux/man-pages/man2/mincore.2.html) or [write() to a dummy pipe](http://stackoverflow.com/questions/7134590/how-to-test-if-an-address-is-readable-in-linux-userspace-app) on linux. Is this check necessary?