Merge tag 'v1.4' into maint

Version 1.4

We have gone through some major overhauls and as such, we are
releasing v1.4
Merge tag 'v1.5' into maint

This is version 1.5

This release follows some major changes including the introduction of
the doxygen documentation system, and the optimization of the dealias
subroutine giving the fastest performance for Compiler yet.

Merge was made to make v1.5 the stable maintainance release.
gen_code_r: split up routine into smaller methods

Split up the gen_code_r routine into separate methods because one
method was far too big.  It was split up according to what type of AST
structure it operated on and how large it was.
run_unit: made the linker configuration dependant on configure

The linker configuration is now dependant on whether or configure
discovers the necessary utilities.
Major Overhaul to configuration and linking.

Made the linking phase highly configurable and adaptive to the host
system's settings, etc.
Cleaned up some settings and added gold to the list of linkers
Added modules that are needed
Shifted to using the linked list instead of the array list.
configure.ac: s/AC_PATH_PROG/AC_CHECK_PROG/
configure.ac: added system checks and made glibc discovery more robust
argp-version-etc: added new module to handle --version
tests: removed test .c files from 'make syntax-check'
compiler.c: added a bug reporting address to the --help output
General edits
compiler.c: fixed new memory leak
gen_code.c: added #ifndef's to source
Cleanups of code.
man/Makefile.am: fixed issue when help2man was found

When help2man wasn't found, it worked because it evaluated to an empty
string, but when it is found and exposed with `./build-aux/missing',
it gives too many arguments to the `[' command.  So it was surrounded
with quotes to fix this.
prog-15: new feature where conditionals can return ints.

The code for translating a conditional of the form `a < b' was moved
to the `gen_code_binary' routine, here a test was added to an
additional field in the AST structure (`actlikejump') that if a return
value was needed then it would emit a conditional move instruction.
Otherwise, a calling `gen_code_cond' would emit a conditional jump.
gen_code: cleaned up code and added documentation