Some improvements mainly on compiler

In this series of commits I made the following modifications.

* `process.execute_ipy` returns not only the output but also the return code.
* `process.execute_ipy` handles the working directory.
* Solved the problem that `compiler.ModuleCompiler.call_pyc` will not delete a response file if some error occurs during compilation.
* Now `compiler.ModuleCompiler.call_pyc`uses `process.execute_ipy`.
* Converted `compiler.ModuleCompiler` to a new-style class.