compiler: compile_dir can be anywhere

Fix an old TODO. Now you can compile where you want and stop having a bunch of fat .nit_compile directories everywhere.

~~~sh
$ nitg --compile-dir /tmp/nit_compile examples/hello_word.nit
~~~

The next question is the default location of the .nit_compile directory.
The current working directory may not be the best place.

Some sensible choices are:

* in tmp (like gcc and other tools). But unlike gcc the name of the file must be stable to help ccache
* in ~ (or ~/.cache). So the user share its own stuff.
* in the root of the project (may not work if the owner is not the user)
* in the directory of the module (same issue)
* in the current working directory (status quo)

Other question, should nitg clean the directory after it? (with an optional --no-clean option for debugging the generated code)