Fix return macros to work with expressions

Fixed RETURN_MM macros to call ZEPHIR_MM_RESTORE after setting
return_value.
It allow the use of expressions using temporary or local variables in
the return statement, as such:

return (count(array_diff(a, b)) == 0);

Added call to clean extension before new config.
Fix missing declaration

Forgot RETVAL_EMPTY_ARRAY declaration
Fix call to clean

Fix call to make clean instead of clean
Merge pull request #32 from mobli/master

Fix return macros to work with expressions