Update pt_BR translation: Sync to a3214803429e05635cbfbe8b3050a73406da6bc6
Update pt_BR translation: Improve translations.

[ci skip]
Merge #892 'Update pt_BR translation'
Update German translation: Sync to 9f1b9726fb28f78fba7c50efa5316c4bf2413cf8.
Update German translation: Improve translations.

* Translate missing and fuzzy strings.
* Fix grammatical errors.
* Rewordings for consistency.
Merge #780 'Update German translation'
Remove include for sys/select.h in vim.h #890

- There is no need to include sys/select.h anymore
- Removed HAVE_SYS_SELECT_H from config.h.in
Import mingw-w64 cmake toolchain settings
Enable cross compiling of third-party dependencies

- Change third-party CMakeLists.txt to handle building
  with cross compiler
- Build libuv, msgpack and luajit with TARGET compiler
- Build a luarocks and luajit (for the interpreter) with
  the HOST compiler
Add support for the PDCurses curses library

- Public Domain Curses is a curses compatible library that runs
  on windows
Cross compile Neovim in Travis with Mingw-w64

- Travis now cross compiles Neovim using Mingw-w64
- The ubuntu 12.04 packages did not work for libuv, we are downloading
  a Mingw-w64 snapshot on every run
- All Neovim dependencies are also being compiled along with Neovim
Bundle PDCurses when cross compiling

- When cross compiling build a bundled PDCurses library
Picked: Refactor declaration generation

- Call compiler from CMake instead of lua script to generate a
  preprocessor file - allows for better/early error detection if
  the compiler fails
- Preprocessor files are saved along with the headers as .i files
- Accept preprocessor lines with trailing chars after # as is
  the case in Clang/Windows
- The fourth argument to gendeclarations.lua is now the path to
  the proprocessor output file
Picked: Add cmake platform checks

- Defined CMake checks for all headers in config.h.in
- Removed headers checks that are not used anymore:
  sgtty.h sys/statfs.h libintl.h poll.h
- Added UNIX check
- Add some fatal checks
  + Check for setenv() and fail if it does not exist
    since our os layer just assumes it does
  + lstat is required by os_unix.c
  + sys/wait.h is required in UNIX
- Removed entries for functions that are not being used: getcwd,
  getrlimit, getwd, nanosleep, sigaltstack, getwd, sigstack, fseeko
- Replaced nearly all defines in config.h.in for functions with
  compile time checks
- Add check for symbol FD_CLOEXEC
- HAVE_ICONV_H and HAVE_ICONV hold the expected checks but Neovim uses
  USE_ICONV define to actually decide whether to enable it
- Removed checks that are no longer needed
  + USEMEMMOVE
  + Removed checks for select.h and sys/select.h and includes
    in vim.h
  + _FILE_OFFSET_BITS
  + HAVE_ST_BLKSIZE

Conflicts:
	config/config.h.in
Fatal errors for setenv/lstat only for UNIX
Picked: Hinidu mkdtemp branch from #850
Define uid_t for windows
Add platform check for langinfo codeset