Add macro to define an option for arbitrary args
Add argument options for some syntax checkers

Gnat, GCC, Clang, GFortran and GHC
Only delete process on interrupt if it is non-nil

In the case where a buffer was opened with an invalid encoding,
such that the user was prompted to select an encoding, it seemed
that flycheck was not fully initialised, so attempting to quit
the buffer or reset it with `normal-mode` triggered an error
due to flycheck's cleanup chain.
Document new argument options
Remove redundant import
Improve docs about nil arguments to interrupt function

See 572ee9e4beabc3bf0ec2796796fb93694b1ef547
[Fix #542] Merge branch '542-catch-all-options'

* 542-catch-all-options:
  Remove redundant import
  Document new argument options
  Add argument options for some syntax checkers
  Add macro to define an option for arbitrary args

Conflicts:
	flycheck.el
Update changelog and texinfo manual [#542]

[ci skip]
Use let-alist to simplify some bindings

See http://endlessparentheses.com/new-on-elpa-and-in-emacs-25-1-let-alist.html
Merge branch 'let-alist'

* let-alist:
  Use let-alist to simplify some bindings
Default all flake8 messages to warnings

Don't match on individual classifiers, to support arbitrary flake8
plugins and to remove the unreasonable classification
[Fix #545] Add an option to customize flake8 error levels
Add tags for each syntax checker

Also allow selection via `(checker FOO)' argument to test/run.el
Merge branch '545-flake8-simplification'

* 545-flake8-simplification:
  [Fix #545] Add an option to customize flake8 error levels
  Default all flake8 messages to warnings
Fix punctuation of docstrings
Add docs for c/c++'s -pedantic, -pedantic-errors
Merge remote-tracking branch 'upstream/master'