Allow for a project to not have any test cases
Split Doxyfile into a template and a customization part

Most of the file is not changed from some sensible default anyway, so we
can store this in the template directory and have a much more manageable
local file which just contains the relevant changes.
Use variables available from project to specify paths
Allow some template files to keep their Autotools dirs

By using the abs_top_{build,src}dir variables, template files can
co-exist between Autotools and CMake build systems.
Rename docu_dir -> doxy_dir to reflect its purpose
Only copy Doxygen stylesheet if it actually exists
Consider directory itself to be part of datafiles

Previously the directory name was just entered as part of a glob; the
new version uses the satellite name as a directory and also makes sure
that this directory is available to run tests in, even if there are no
datafiles (the directory itself is now considered a datafile)
Correct mixup between option and cache variables

Options are boolean flags that are stored... in the cache, whereas
cache variables are also stored in the cache, but can have a variety
of types (including booleans). It was possible to confuse the two,
because if you set it as a variable on the command line, it will
override both.
Allow more variety in unit test program file names

They can now be called test_*.cpp or *_test.cpp
Specify source directory at the highest level

Some projects also have side directories for utilities etc.
Make project file easier to customize

Note where opm-core specific parts are, and put dependency listing to
the top where it is more noticable.
Allow --without as an alias to --disable

This gives a symmetry to --with-xxx options
Rearrange options in order of need

Boost is very little likely to be removed from the list of dependencies;
we rather want a continuous block to remove when customizing.
Replace hardcoded opm-core name with variable
Reorder dependency list

Should still be queried in topological order
Distinguish between AGMG and opm-core specific

The AGMG parts may be reusable in other projects
Use generic names in other files also

Reduce the number of files that must be customized when starting new
projects.
Use generic name for configure wrapper also
Merge pull request #149 from rolk/149_projstruct

Harmonize project structure to maximize build code reuse