org-table.el: Fix a bug of leaving the inserted TBLFM line

* org-table.el (org-calc-current-TBLFM): Ensure to remove the
currently inserted TBLFM line, when calling `org-table-recalculate'
returns an error and the processing stops.

* testing/lisp/test-org-table.el: Add test.

When you hit =C-c C-c= at the line of "#+TBLFM: $2=$1*2::$2=$1**2" in

    | 1 |   |
    | 2 |   |
    #+TBLFM: $2=$1*1
    #+TBLFM: $2=$1*2::$2=$1**2

you got:

    | 1 |   |
    | 2 |   |
    #+TBLFM: $2=$1*2::$2=$1**2
    #+TBLFM: $2=$1*1
    #+TBLFM: $2=$1*2::$2=$1**2

with the error message of:

    user-error: Double definition `$2=' in TBLFM line, please fix by hand

In this case, you expected:

    | 1 |   |
    | 2 |   |
    #+TBLFM: $2=$1*1
    #+TBLFM: $2=$1*2::$2=$1**2
Cosmetic change in messages.
ox: Inhibit startup process when calling `org-mode'

* lisp/ox.el (org-export--get-inbuffer-options,
  org-export--list-bound-variables, org-export--generate-copy-script,
  org-export-string-as, org-export-expand-include-keyword,
  org-export--prepare-file-contents): Inhibit startup process when
  calling `org-mode'.
ox.el (org-export-replace-region-by): New function

* ox.el (org-export-replace-region-by): New function.
* ox-texinfo.el (org-texinfo-convert-region-to-texinfo):
* ox-md.el (org-md-convert-region-to-md):
* ox-latex.el (org-latex-convert-region-to-latex):
* ox-html.el (org-html-convert-region-to-html): New functions
to replace the active region by its export into various
backends.
Merge branch 'master' of orgmode.org:org-mode
raw org and drawer imply verbatim results

  This unifies the results handling across a number of different
  languages.  It is still possible to force tabular output by adding the
  ":results table" argument.

The following example demonstrates the results in shell python and perl.

** drawer and table
#+begin_src sh :results drawer table
 echo -e "1\n2\n3"
#+end_src

#+RESULTS:
:RESULTS:
| 1 |
| 2 |
| 3 |
:END:

#+begin_src perl :results drawer table
"1\n2\n3"
#+end_src

#+RESULTS:
:RESULTS:
| 1 |
| 2 |
| 3 |
:END:

#+begin_src python :results drawer table
return "1\n2\n3"
#+end_src

#+RESULTS:
:RESULTS:
| 1\n2\n3 |
:END:

** drawer
#+begin_src sh :results drawer
 echo -e "1\n2\n3"
#+end_src

#+RESULTS:
:RESULTS:
1
2
3
:END:

#+begin_src perl :results drawer
"1\n2\n3"
#+end_src

#+RESULTS:
:RESULTS:
1
2
3
:END:

#+begin_src python :results drawer
return "1\n2\n3"
#+end_src

#+RESULTS:
:RESULTS:
1
2
3
:END:

** raw
#+begin_src sh :results raw
 echo -e "1\n2\n3"
#+end_src

#+RESULTS:
1
2
3

#+begin_src perl :results raw
"1\n2\n3"
#+end_src

#+RESULTS:
1
2
3

#+begin_src python :results raw
return "1\n2\n3"
#+end_src

#+RESULTS:
1
2
3

* lisp/ob-core.el (org-babel-result-cond): The "raw", "org" and "drawer"
  :results header argument values preclude table processing unless the
  "table" argument is given as well.
use org-babel-result-cond in Haskell code blocks

* lisp/ob-haskell.el (org-babel-execute:haskell): Use
  org-babel-result-cond in Haskell code blocks.
use org-babel-result-cond in OCaml code blocks

* lisp/ob-ocaml.el (org-babel-execute:ocaml): Use org-babel-result-cond
  in OCaml code blocks.
use org-babel-result-cond in scheme code blocks

* lisp/ob-scheme.el (org-babel-execute:scheme): Use
  org-babel-result-cond in scheme code blocks.
use org-babel-result-cond in JavaScript code blocks

* lisp/ob-js.el (org-babel-execute:js): Use org-babel-result-cond in
  JavaScript code blocks.
use org-babel-result-cond in Ruby code blocks

* lisp/ob-ruby.el (org-babel-execute:ruby): Use org-babel-result-cond in
  Ruby code blocks.
  (org-babel-ruby-evaluate): Delay table processing.
org.el (org-file-contents): Make the message more prominent

* org.el (org-file-contents): Make the message more prominent.
org-contacts.el (org-contacts-export-as-vcard): Don't use non-existent function `org-install-letbind'

* contrib/lisp/org-contacts.el (org-contacts-export-as-vcard): Don't use
non-existent function `org-install-letbind'.

Thanks to Simon Thum for reporting this.
org-contacts.el (org-contacts-matcher): Better matcher

* contrib/lisp/org-contacts.el (org-contacts-matcher): Better matcher.

Thanks to Simon Thum for suggesting this.
Merge branch 'master' of orgmode.org:org-mode
org.texi: Update documentation about included files

* doc/org.texi (Include files): Remove reference to :prefix1
  and :prefix.  Give more details for :minlevel.
org.texi: Update internal links documentation

* doc/org.texi (Internal links): Document #+NAME keyword and
  cross-referencing during export.
* doc/orgguide.texi (Internal links): Add a note about
  cross-referencing.
org-contacts.el , fix bugs about 'tel and 'note properties

* contrib/lisp/org-contacts.el (org-contacts-vcard-format): Fix bug by
taking the "tel" and "note" properties into account.
org-table.el (orgtbl-apply-fmt): Enhance docstring

* org-table.el (orgtbl-apply-fmt): Enhance docstring.
Correctly format orgtbl line when there is a :lfmt argument.

* org-table.el (orgtbl-format-line): Fix bug when formatting
line.

TINYCHANGE