ox: Add generic function to retrieve the date of a document

* lisp/ox.el (org-export-date-timestamp-format): New variable.
(org-export-get-date): New function.
* testing/lisp/test-ox.el: Add tests.
export back-ends: Handle DATE keyword in a uniform way

* lisp/ox-ascii.el (org-ascii-template--document-title): Use new function.
* lisp/ox-beamer.el (org-beamer-template): Use new function.
* lisp/ox-html.el (org-html-format-spec): Use new function.
* lisp/ox-latex.el (org-latex-template): Use new function.
(org-latex-date-timestamp-format): Remove variable.

The uniform way is to format DATE according to
`org-export-date-timestamp-format' when keyword value consists in
a single timestamp.
export back-ends in contrib: Handle DATE keywords the same way

* contrib/lisp/ox-deck.el (org-deck--build-meta-info): Use
  `org-export-get-date'.
* contrib/lisp/ox-groff.el (org-groff--mt-head): Use
  `org-export-get-date'.
* contrib/lisp/ox-koma-letter.el (org-koma-letter-template): Use
  `org-export-get-date'.
org.el (org-cycle-internal-local): Fix invalid search bound

* org.el (org-cycle-internal-local): Fix invalid search bound
when `org-cycle-include-plain-lists' is set to 'integrate.

Thanks to James Harkins for reporting this.
contrib/lisp/org-bibtex-extras.el: Replace non-existent `org-babel-clean-text-properties' with `org-no-properties'

* contrib/lisp/org-bibtex-extras.el (obe-citations)
(obe-get-meta-data): Replace non-existent
`org-babel-clean-text-properties' with `org-no-properties'.

TINYCHANGE
contrib/lisp/org-git-link.el: Small fixes

* contrib/lisp/org-git-link.el: Wrap into `eval-and-compile'
to silent warnings.
(org-git-show): Use `with-current-buffer' instead
of (save-excursion (set-buffer ...))

TINYCHANGE
ox-html.el and ox-org.el: Use the custom HTML extension.

* ox-org.el (org-org-publish-to-org):
* ox-html.el (org-html-publish-to-html): Use the custom
extension.

Thanks to Ian Barton for reporting this.
contrib/lisp/org-bbdb.el: Use `bbdb-record-xfield' when available

* contrib/lisp/org-bbdb.el (bbdb-record-xfield): Declare.
(org-bbdb-make-anniv-hash): Use it and fall back on
`bbdb-record-note' if not defined.

TINYCHANGE
removing alternate code block variable syntax

* doc/org.texi (var): Remove the "Alternate argument syntax" section
  from the documentation.
* lisp/ob-core.el (org-babel-src-name-w-name-regexp): Update the regexp
  used to match code block names.
  (org-babel-get-src-block-info): Remove the code used to parse this
  alternate variable specification syntax.
Fix org-babel-R-initiate-session

* lisp/ob-R.el (org-babel-R-initiate-session): handle case where the
  session buffer exists, but does not have a live process

If the session buffer exists, but the user has exited the R process
manually, then the (R) command will create a new buffer, then try to
rename it over the old buffer, causing an error.  The right thing to do
is to start R within the existing buffer.
remove save-excursion inside save-window-excursion

  it is not necessary

* lisp/ob-R.el (org-babel-R-initiate-session): Remove unnecessary
  save-excursion nested inside a save-window-excursion.
Fix testing/lisp/test-ob-emacs-lisp.el

* testing/lisp/test-ob-emacs-lisp.el: Move stray test inside ert-deftest
Clean up org-babel-expand-body: functions for awk and picolisp

* lisp/ob-awk.el (org-babel-expand-body:awk),
  lisp/ob-picolisp.el (org-babel-expand-body:picolisp): remove optional
  arg from these functions

The optional argument is apparently never passed by org-babel code.
Maybe this is a relic of an earlier calling convention?
Document how :var introduces code block dependencies.

* doc/org.texi: Document how :var introduces code block dependencies.
simplify the discussion of :var causing execution
org-clock.el: Set clock markers to nil on clock out/cancel

* org-clock.el (org-resolve-clocks-if-idle): Only try to
resolve last clock if the clock buffer still exists.
(org-clock-out, org-clock-cancel): Set markers to nil.

Thanks to John Wiegley for reporting this bug.
org.el (org-options-keywords): Add #+TARGET

* org.el (org-options-keywords): Add #+TARGET.
org-bbdb.el: Fix typo.
org.el (org-indent-line): Enhance indentation after a list item

* org.el (org-indent-line): A line just below a line with a
list item is now indented depending on the indentation of this
list item.
org-mobile.el: Remove useless defvar

* org-mobile.el: Remove useless defvar.