Use codemirror 4.7.0 node package instead of custom install  - #1655

* Installed package with `npm install codemirror@4.7.0`.
* This update loads updated and new modes
* No new addons are being loaded
* gitignored unused dirs of package but kept demo/ since it will
  be useful to debug issues for LT's cm version
* Left alone any cm addons that had been modified
* Removed unused emacs.js and gitignored css mode (which wasn't before
  but should be b/c of CSS plugin)
* Added mode/meta.js which are helpful CM fns for modes
Remove gitignore that is too general

lib is a fairly common directory for node_modules and was silently
causing issues when installing codemirror package. Removed and not
replaced since no lib directory showed up after removal
Move custom codemirror addons to their own dir

codemirror package is now free of any custom files
Blacklist modes to prevent loading instead of gitignoring them

While gitignoring prevented unused modes from being added to git, these
modes were still on disk after an npm install and were getting loaded.
This only effects developers but worth solving correctly rather than causing
subtle heartache for someone else.
Add back foldgutter css which had been missing a while

Was accidently removed with cm4 upgrade - 4fa79196667bb3bbd9273009cadd9014593a07ed
Use StringStream provided by runmode addon
Start doc for committers - explain known state of node deps
Merge branch 'use-codemirror-package'
Fix ibdknox theme active line background - close #1740