Port vim's patch 7.4.338 ('breakindent')
vim-patch: 7.4.346

Do not cache "brishift".

Indent was not updated when changing 'breakindentopt'.

Reported by itchiny, fixed by chrisbra in vim patch 7.3.346
(https://code.google.com/p/vim/source/detail?r=3248c6e40aee01a7254d111dd846c6ec7889a804).
vim-patch: 7.4.353

Make 'breakindent' work with the 'list' option.

Originally patched in vim patch 7.4.353, by chrisbra
(https://code.google.com/p/vim/source/detail?r=d42a1d3b74d40f580359dbd139d2d0dfa7235252)

Updated version.c.
vim-patch:7.4.371

Problem:    When 'linebreak' is set control characters are not correctly
displayed. (Kimmy Lindvall)
Solution:   Set n_extra. (Christian Brabandt)
vim-patch:7.4.370

Problem:    Linebreak test fails when encoding is not utf-8. (Danek
Duvall)
Solution:   Split the test in a single byte one and a utf-8 one.
(Christian Brabandt)
vim-patch:7.4.388

Problem:    With 'linebreak' set and 'list' unset a Tab is not counted
            properly. (Kent Sibilev)
Solution:   Check the 'list' option. (Christian Brabandt)
vim-patch: 7.4.352

Problem:    With 'linebreak' a tab causes a missing line break.
Solution:   Count a tab for what it's worth also for shorter lines.
            (Christian Brabandt)
update src/nvim/testdir/Makefile

include breakindent and list related tests
Merge pull request #691 from fmoralesc/master

Port vim's breakindent patch to neovim's codebase. (vim patches 7.4.338, 7.4.346, 7.4.352, 7.4.353, 7.4.370, 7.4.371, 7.4.388)