Introduce the GNU Readline support

This patch introduces the readline(3) support to Tig, if it is available
on the system. That is to say, prompt history, cursor navigation and
completion.

The currently supported completions are variables (both "%(name)" syntax
and interpolation), actions (e.g. ":edit"), and options to the "set" and
"toggle" actions.

Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>