Fixed issue #15.

Don't pass null receivers to GroovyInterceptor.
Revisiting the fix for issue #15.

Handling the null receiver by skipping the chain. This avoids the code
duplication and ensures that the null receiver handling is uniform.

Note that technically speaking, groovy treats 'null' as an instance of
the NullObject class, and so "null.toString()" is not the NPE like Java, but
it is actually "NullObject.INSTANCE.toString()" which returns "null".