Clip scroll positions given to scrollTo to scrollable space

Closes #1934
Add more extending unicode ranges
Document execCommand

Issue #1935
[dialog addon] Add cm.openNotification: timed & unobtrusive dialog
[dialog addon] Slight modifications to openNotification

Remove callback argument, save currently open dialog in per-editor state.
[vim mode] use openNotification instead of openConfirm for errors
[markdown mode] `\n* ` should not toggle em state.

Closes #1920.
[real-world uses] Add MVC Playground
[clike demo] Fix duplicate variable names for C and C++ editors

The C editor and the C++ editor have the same variable name, so
the latter shadows the former. Fixed by renaming both.
[css mode] Fix more indentation issues.

Closes #1925.
Only call onFocus when the editor is really focused
[go mode] Add ')' as electric character.

As a result, the common pattern

import (
	"foo"
	"bar"
	)

will re-indent automatically to the gofmt-blessed

import (
	"foo"
	"bar"
)