Keep shared markers consistent when documents are linked/unlinked

Issue #2360

Conflicts:
	lib/codemirror.js
	test/doc_test.js
[haxe mode] Add comment styles
Add insertSoftTab command

Issue #988

Conflicts:
	doc/manual.html
	lib/codemirror.js
[django mode] Add

Added django.js which implements the following modes

  - django (text/x-django)
  - django:inner
[haxe mode] Fix indentation for types
[overlay addon] Fix bug when overlay mode is itself multiplexed

It assumed it saw all parts of the stream, and started
doing bad things when that was not the case.

Issue #2410
Drop font-family rules from themes

Closes #2415
[haxe mode] Add 'abstract' keyword
[xml-hint addon] Support attributes that apply to all tags
[xml-hint addon] Filter out !attrs from top level completions
[verilog mode] Rewrite

Conflicts:
	mode/verilog/verilog.js
[haxe mode] Support imports with wildcards

Haxe supports imports with willcard
http://haxe.org/manual/modules#import-whole-package
[javascript mode] Improve indentation of hanging else clauses

Closes #2429
[merge addon] Verify that diff is up to date in left/rightChunks

Issue #2438
[r mode] Add lineComment property
List punctuation in default theme, don't set color for default color styles

Also fix Erlang mode to not return a non-standard token type.

Issue #2435
Add simple completion helper for php, scala, java, c#

Issue #2441
Fix addLineClass (and similar) returning null on no-op

When the call didn't result in an actual change (for example
line already had the given class), changeLine would return null.

This doesn't seem useful, and caused issue #2438. It now always
returns the line handle (as documented).

Conflicts:
	lib/codemirror.js
[go mode] Set Go mode to use brace folding
[css mode] Fix tokenizing of empty url() token

Issue #2465