[Console] Updated to terminfo renderer.

This brings .NET's parameterized terminfo renderer, various fixes and
semantic changes.

The existing implementation of the Console did not have a proper an
implementation of terminfo's parameterized sequences.  Instead of
this, a collection of hacks existed to hardcode both light colors and
cursor position.  These are now gone, since the parameterized strings
do contain the correct values for this.

The search path for terminfo now picks the most modern location for
terminfo.   With the old paths in place.

The lookup for terminfo databases only supported the lookup based on
the first character of a terminal, so for example, for xterm this was
$terminfo_dir/x/xterm, but OSX and maybe other systems now store the
files in $terminfo_dir/78/xterm (where 78 is the hex representation of
'x', the first letter of the terminal name).

The fallback is still in place for other Unix systems.

We no longer use the built-in terminfo databases as the first pick,
instead we try to load the system terminfo database before we use the
built-in versions.

Worth figuring out if we want to remove the two built-in ones (Linux
and xterm) as broken terminfo databases are no longer the norm in Unix
and just keep the ansi one as a database of last resort.

This means that the console actually now gets high colors on MacOS,
not just Linux.

This also fixes the issue with consoles with more than 256 colors.  As
reported in bug 18315.