improve undo w/ setline calls + <c-r>= mapping

- add s:SetLine function which calls undojoin before setline. at some
  point setline started causing an undo break.
- <c-r>= mapping for expanding <cr> now causes an undo break as well, so
  add undojoin to that function as well.
- looks like some undo related bugs in vim have been fixed, so i can
  also enable my more complex undo related test which would previously
  fail.
improve brace support for htmldjango + htmljinja

- don't auto close a single open brace unless inside of script tags
  - fixes my auto tag completion in eclim which wouldn't fire with the
    trailing close brace there.
- on double brace, add 2 closing double braces. update matchem edge case
  handling to deal with multi character result.