Fix issue #48.

On some platforms, OS X Mavericks, the inferior is allowed to close the
psuedo terminal that cgdb allocates for it.

Before this fix, CGDB would go into a tight loop consuming 100% cpu
reading the EOF on the closed terminal descriptor.

After this fix, CGDB detects the EOF and reallocates a terminal for the
inferior. The user can then run the inferior again in the same GDB session
and all should work well.
Adds utf8 support by using ncursesw.

A library check was added for ncursesw and if found
it is used instead of the default ncurses.
Extends utf8 support to other windows

'isprint' function considers utf8 bytes non-printable. This change
replaces use of 'isprint' by '!iscntrl' for non-printable character's
exclusion, which allows a wider range of characters to be displayed,
including utf8 characters.