Handle indentation of close bracket differently.

Also factor it out so that it can be customized for languages that have special
requirements.

Also also fix issue where expr blocks were causing nested non-expr blocks to be
indented to expr level, which is undesirable.
Added electric-close-brace.

It just indents the close brace properly immediately after typing it. This used
to happen until we revamped open brace magicks, so now it's back.