Don't leak zvals when a timeout is hit

The unit tests for I1188123 hit this bug. On timeout, execution returns
to PHP with the timed_out flag set. Then when the LuaSandbox object is
destroyed, lua_close() is called, which calls
luasandbox_free_zval_userdata() for each zval stored in the state. This
in turn calls luasandbox_enter_php(), which causes a call to lua_error()
if the timed_out flag is set, aborting the __gc metamethod without
freeing the reference.

The fix ignores the timed_out flag during userdata destruction.

Change-Id: I30b98cc8577b31f2b51d611bf195493e19971ad8