New implementation of migration code within the history_t class will
copy the contents of the old fish_history found in the config directory
to its new location in the data directory. The old file is left intact.
This is done only in the event that a fish_history is not already found in
the data directory ($XDG_DATA_HOME/fish or ~/.local/share/fish).
This reverts commit a66d44054c4aae44c307b10bb10469b4565e5027 due to
https://github.com/fish-shell/fish-shell/issues/2406 - entering keypad
mode causes various terminals to send undocumented and highly variable
escapes for keys not specified in the terminfo specification.
This change moves source files into a src/ directory,
and puts object files into an obj/ directory. The Makefile
and xcode project are updated accordingly.
Fixes#1866