build: no need to quote the paths in CMake, it will do it automatically
build: only manipulate out if getting the timestamp was successful

This fixes an issue seen in #1548, though the real problem is something
different.
Don't use env vars for configuration time options

- As a general rule of thumb one shouldn't use environment variables
  for setting configuration options for CMake. The reason for this is
  we don't know when CMake will be executed and re-evaluate that variable.
- e.g. If we run cmake a first time with a var set, and then run make on
  a second session (with no var) and cmake is called because a
  dependency changed, the option would be disabled
- This commit removes the use of environment vars from
  src/nvim/CMakeLists.txt entirely
- Removed SKIP_UNITTEST since it could only be used to remove a target
  at configuration time (and the target was optional anyway)
- Turned SANITIZE into an option, clang-asan.sh now passes cmake
  -DSANITIZE=ON
- Removed SKIP_EXEC since it was disabling a target at configuration time
  (not being used)
Only use SANITIZE for nvim target

- Clang's Address Sanitizer options may cause problems when running
  the unit tests, restrict the use of these options to the nvim target.
Allow most old tests to pass with nocp.

test69.in:
    because 'nocp' sets 'esckeys', add an extra <esc> to avoid 'tm' pause.
Allow the rest of the old tests to pass with nocp.

test40.in, test60.in, test_breakindent.in, test_listlbr.in, test_listlbr_utf8.in:
    To avoid <tab> triggering wildmode, set wildchar to 'cp' default.

test_breakindent.ok:
    Modify expectations to avoid cpoptions+=n
Make migrated test33 more similar to old legacy test.

Remove `expandtab` and add a missing trailing space from the legacy test.
Fix warnings: edit.c: ins_compl_next_buf(): Np dereference: MI.

Problem    : Dereference of null pointer @ 3247.
Diagnostic : Multithreading issue.
Rationale  : Problem only occurs if global `ctrl_x_mode` is modified
             while calling function is executing.
Solution   : Use local copy instead of global.
Fix warnings: message.c: msg_attr_keep(): Np dereference: FP.

Problem    : Dereference of null pointer @ 179.
Diagnostic : False positive.
Rationale  : Error occurs if `s` paramater is null, which should not
             happen.
Resolution : Declare parameter as non null.
Merge pull request #1510 from three-comrades/testnocp

Allow all tests to pass with 'nocp'
Merge pull request #1618 from elmart/clang-analysis-fixes-5

Fix clang analysis warnings. (5)
strings: Remove NONNUL_ALL from NULL-taking functions.

vim_strup() is only used in a couple places, with no NULLs possible, so
keep the attribute and remove the NULL check.
api: Handle NULs and newlines in buffer_*_line.
api: Add tests for when not to handle NULs.
Merge pull request #1341 from splinterofchaos/api-nul

Api: Improve Nul handling
Merge pull request #1589 from splinterofchaos/fix-const-atter

strings: Remove NONNUL_ALL from NULL-taking functions.
docs: Remove shortname references.

In addition, align the removal notice next to 'key' with other
such notices (options.txt).
runtime: Cleanup refs to removed options

- {no,inv,}shortname
- {no,inv,}sn
- cm, key (remnants of cryptmethod)
Merge pull request #1623 from Pyrohh/cleanup-shortname

Docs: Remove 'shortname' references
doc: Misc. improvements to nvim-related docs

- Improved wording in a few places for clarity
- Various capitalization/grammar fixes
- Change references to Neovim as 'editor' to 'Nvim'
- Be consistent regarding utilization of vim's documentation features,
  e.g. unnamedclip -> |unnamedclip|
- Reflowed all changed paragraphs accordingly

- Add spaces before parentheses
- Remove trailing whitespace
- Standardize single spaces after periods. Vim's docs use two for the
  most part, but Nvim's use one mainly, so just follow Nvim's conventions