Improve dependency generation for use with objdir

It seems that ocamldep assumes that MLI and ML files always lie in
the same directory.  This is not the case if we use the objdir feature
of make and generated lexer, parsers or other files generated by
a preprocessor.

We therefore need to add manually some dependencies.

Closes #175.
Define lookup path for interface files to avoid false stale files

If make cannot find some interface files, it will produce a message
about stale dependencies.  Indeed, make will believe that the file
has moved.
Mute error messages from ocamlfind when guessing the standard library directory
Make generation of HTML documentation compatible with objdir

By using local variables we let make write the appropriate paths for
the assets required for the preparation of the HTML documentation.
Take modules in account when preparing METAPOST and TeX documents
Better integration of the subdir and user target functionalities
Return to source directory when switching credentials

If the program make runs from .OBJDIR when switching credentials, it
might be unable to find the required Makefiles.
Enhance the computation of subdirectories list for projects

In projects, it is important that modules are prepared before than
other, more random, subdirectories.
Use a shorter form for optional file inclusion
Read the global build file and the global configuration file

Closes #176
Fix the test path shown by our test suite
Rename adequately the configuration file
Split functionalities for project handling
Split functionalities for aggregate handling
Implement a got/expected test framework
Implement generic test framework
Merge branch 'topic/polish-metapost'
Merge branch 'topic/polish-ocaml'
Merge branch 'topic/polish-system'