Add LICENSE. fix #878. PR #883

- change to Apache 2.0
- include Vim license in LICENSE
- upate README
Fix #838: build with "USE_BUNDLED=OFF" fails to find dependencies

Stop forcing some platform setting that are really intended to be used
for Travis CI.  Under other systems, like Arch Linux, it prevents
dependencies from being correctly located.
Merge pull request #844:

'Fix #838: build with "USE_BUNDLED=OFF" fails to find dependencies'
Fix #867: cmake doesn't issue `-isystem` for versioned gcc

CMake purposefully disables the use of the `-isystem` flag on Apple
platforms, but it's overly blunt with the detection.  Apple's compilers
have supported the flag since at least 10.4.  Let's force the switch to
be on when gcc/g++ is detected on an Apple platform to reduce the
warnings out of the msgpack-related bits.
Merge #887 'Fix #867: cmake doesn't issue `-isystem` for versioned gcc'
FileID: implement `FileID` struct

`FileID` should encapsulate `st_dev` and `st_ino`. It is a new abstraction
used to check if two files are the same. `FileID`s will be embeded inside
other struts like `buf_t` or `ff_visited_T`, where a full `FileInfo` would be
to big.
FileID: remove `INVALID_DEVICE_ID` macro
FileID: refactor buffer.c to use `FileID`
FileID: refactor ex_cmds2.c to use `FileID`
FileID: refactor file_search.c to use `FileID`
FileID: refactor if_cscope.c to use `FileID`
FileID: refactor path.c to use `FileID`
FileID: refactor os_unix.c to use `FileID`
FileID: make `os_stat()` static
FileID: remove last use of `st_ino` in memline.c

* FileID can’t be used in memline.c, because the block0 is defined to
use only a 32bit ino.
* implemented `os_file_info_get_inode`
* deprecated `os_file_info_get_inode
FileID: remove `CHECK_INODE` macro