Do not detect macros like VIM_TRUE as boolean values
Remove project int types: Case short_u: Replace with uint16_t.

- Replace short_u with uint16_t (same size, should give no problems).
- When possible, remove explicit downcasts so that they are found when
  flag -Wconversion enabled.
- Remove short_u typedef.

Requested in #459.
Remove project int types: Case int_u: Replace with uint32_t.

- Replace int_u with uint32_t (same size, should give no problems).
  In fact, only usage found seems to be dead code (some functions in
  ui.h seem not to be used anymore).
- Remove int_u typedef.

Requested in #459.
Remove project int types: Case long_i: Replace with plain long.

Replace long_i with plain long.

long_i was just plain long, adding marker __w64, to be used by
Microsoft's compilers only, as an aid when transitioning from 32 bits to
64 bits. Purpose of this marker was, in fact, to make a 32 bit compiler
emit the same warnings that a 64 bit compiler would.

This __w64 marker is nowadays deprecated by said compilers, and use of a
real 64 bit compiler is recommended instead. See
http://msdn.microsoft.com/en-us/library/s04b5w00.aspx for details.

So, there's no reason to maintain this anymore, and thus is removed.

Refactoring long into int64_t is not attempted, as doing that in a bulk
way is too much complicated. That is left to be done later, on a
file-by-file basis, probably intermixed with file-by-file -Wconversion
activation.

Requested in #459.
Generate a lua module to help pass build-related settings.

This allows us to avoid hard-coding paths and using environment
variables to communicate key information to unit tests, which fits
with the overall goal of making sure that folks driving CMake directly
can continue to do out-of-tree builds.
Fix unit test cleanup of path_shorten_fname_if_possible.