feat(emacs/lean-company): replace ?M in AC candidate with M and colorize

close #149
fix(emacs/lean-company): only activate auto-completion when TAB is pressed
fix(emacs/lean-tags): pass lean-flycheck-checker-options properly

Fix #153
feat(emacs/lean-settings): add lean-show-only-type-in-parens

Fix #135
feat(emacs/lean-cmd): add FINDG cmd
chore(frontends/lean/server.cpp): add BEGIN/END for WAIT command
feat(emacs/lean-cmd): add WAIT command
feat(emacs/lean-company): call FINDG if cursor is at "_"
feat(emacs/lean-settings): add lean-flycheck-pp-width and lean-flycheck-max-messages-to-display
feat(bin/linja): add --flycheck-max-messages

Close #134
feat(bin/linja): add --cache option

Needed to solve #140
feat(emacs/lean-flycheck): "real" .clean file instead of "flycheck_real.clean"

Fix #140
feat(emacs/lean-mode): add imenu support

Close #97
chore(frontend/lean/pp_options): use consistent name convention for pp option names
refactor(library/logic/classes/decidable): rename 'decidable_eq_to_decidable' theorem to 'of_decidable_eq'
fix(frontends/lean/elaborator): missing constraint
feat(library/unifier): option 'unifier.computation true' will force elaborator to always consider an extra case-split when the right-hand-side of a flex-rigid constraint is not in weak-head-normal-form
refactor(library/unifier): move all_local outside of the class
fix(library/unifier): catch type error when checking is_def_eq of type incorrect expressions
feat(library/unifier): consider whnf case-split on flex-rigid constraints whenever the rhs contains a local constant that is not in the lhs