ui: all warning and error message's will now be colored.

* [ WARING ] message's are yellow.
* [ ERROR ] message's are red.
Signed-off-by: Michel Megens <dev@michelmegens.net>
color: add class definition for xTerm colors.

cli: added cli calls in the ModuleGenerator.
Signed-off-by: Michel Megens <dev@michelmegens.net>
options: added a compile option for XTerm color output.

Users can choose to use color output using -l or --colors. The color
region has also been reduced to just the keyword OK/ERROR/WARNING instead
of the entire line.

Signed-off-by: Michel Megens <dev@michelmegens.net>
colors: added a forgotten file.

Added OptionColors.java forcefully to the SCM, because it was denied by
the .gitignore file.

Signed-off-by: Michel Megens <dev@michelmegens.net>
build: clean: Fix empty module infinite loop issue

Signed-off-by: Bart Kuivenhoven <bemkuivenhoven@gmail.com>
Build: Phase: Add phase states to build structure

Where before everything happened in one big if, and the developer had to
just figure out where in this huge blob of code the bug would occur, now
there is a system that clearly defines what happens in each state of the
build process.

These phases include:
 * InitialPreconfig,		(--gen-depfile)
 * Preconfig,			(--update-depfile)
 * Configure,			(--configure)
 * Compile and
 * Complete.

These phases each manage a global feature of build and if necessary they
can flow into eachother.

Before, if configure was used without a depfile present, Build would try
and fail to generate one in memory. Now the phase is switched to
generate a depfile, with a condition that once the depfile has been
generated, the configuration state will be restored and rerun.

This should make the code much more understandable to the programmer
than the giant if structure that existed before.

Signed-off-by: Bart Kuivenhoven <bemkuivenhoven@gmail.com>
Merge branch 'master' into testing

Conflicts:
	src/main/java/eu/orionos/build/Config.java