Attempted to address various cross-platform installation issues:
- Removed all hard-coded references to file-paths, and replaced them
with paths provided by `appdirs`.
- Removed (erroneously inserted) default file paths which would never be
checked due to application logic.
- Modified `setup.py` to no longer install a configuration file. The
mechanics are still in place to **read** a configuration file, but
after examination, I've concluded that the installation of that file
is best left to package maintainers rather than `cheat` itself.
Performed a general refactoring, focusing on the following:
- Removing layers of abstraction in config handling
- Stubbing out proper config validator
- Updating envvar names located throughout the project
PR #391 changed the locaton into which system-wide cheatsheets are
installed to `/usr/share/cheat`, in order to comply with FHS. However,
this is causing conflicts with the `snap` packaging process.
This commit removes hard-coded references to `/usr/share/cheat` (outside
of `config/cheat`), and instead reads the cheat path via the
`CHEAT_PATH` config value (which may be set either in `cheat/config`, or
exported as an environment variable).
Lastly, this commit makes `setup.py` "aware of" the `CHEAT_PATH` env
var, allowing us to specify to where sytem-wide cheatsheets should be
installed during the `snap` build.