Use ferror instead of checking errno to detect errors in read_file

glibc sets errno even though the file read did not have an error
Fixes #1731
web_config: update AngularJS to 1.0.8
abbr.fish: add abbr, a command to manipulate abbreviations

Work on #731.
web_config: set width to dynamic 80% of window

As we add more tabs, 800px looks increasingly cramped, and our config
should take advantage of the screen space available.
web_config: add support for viewing abbreviations

Add a new tab which lists the current abbreviations defined, by wrapping
the `abbr` command.

Work on #731.