The escape codes and special chars now live in their own module. The
color module is only concerned with detecting whether to use colors or
not.
Additional variables are defined with hard a coded ESC char, a tab and a
newline. This removes the need for echo or printf.
Add make only function to convert strings to lowercase and uppercase.
This can replace the `$(shell echo $(var) | tr 'a-z-' 'A-Z_')` pattern.
Using the 'make' implementation results in being around 100 times faster.
A call to `$(ensure_value x,y)` will fail with message y if x is empty, and
otherwise return x. This can be useto write more compact makefiles, while still
producing friendly error messages.