Allow reading manpages by using F1.
Use basename for man argument

This protects from providing paths to man, like `./a.out`.
document new F1 binding
Autogenerate manpage completions in background if they do not exist
Don't show warning while generating man page completions on startup
add bindings for PuTTY's I-can't-believe-it's-xterm keyboard

(see #170)
Fixes misleading "connect: Connection failed" message on start up

When launching the first instance of fish and fishd is not launched already, this should not be considered an error as long as it can be launched. So ignore the first failure of connect(), as the calling function get_socket() will try again. May need a bit of cleanup.
Fix modprobe completion for newer modprobe versions
Do not show files in modprobe completions
Use fish from $__fish_bin_dir while calling fish_update_completions at startup
Cast timestamp before using it for formatted string.

time_t doesn't necessarily have to be a long number. In fact, manpage
for types.h mentions it can be a double value.
Large cleanup and refactoring of unescape() function.
Remove old unescape() function
Cast size_t to unsigned long.

printf expects unsigned long (%lu) argument, however, size_t doesn't
have to be declared as such. As %zu is C99 (but not C++), it shouldn't
be used directly. Instead, I have to cast value to the correct type.
Ensure the loop in offset_of_next_item_fish_2_0 is executed.

This ensures that timestamp will be initialized.
Fix io_buffer_t::print to take unsigned long argument.
Fix %lu for size_t in fish_tests.cpp
cd completion: handle not accessible directories
Fix indentation in __fish_complete_cd
Do not open CLI browsers when using fish_config.

From the Python webbrowser documentation:
"If text-mode browsers are used, the calling process will block until the user exits the browser."

Running fish_config on an ssh server with no GUI browser will open a CLI browser which blocks and stops the server from handling requests.
Using multiprocess to run the server in the background lets CLI browsers access the page, but the page is unusable.

For now, disable CLI browsers and recommend opening the page in a graphical browser.
In the future, maybe write a CLI utility to change prompts and delete history items.