clint: disregard compound literal return

This allows lines like:

return (my_struct_type) {
  .my_int = 5,
  .my_str = ""
};

Thanks to @watk for finding and fixing it!
api/helpers: implement C string to String helper

Use it in buffers.c
Merge branch 'master' of https://github.com/neovim/neovim
Apply most recent changes by chrisbra

Taken from https://github.com/chrisbra/vim-mq-patches/

Includes the  sbr_linestart_breakindent stuff, consolidates options into
'breakindentopt'.