org-agenda.el (org-agenda-limit-interactively): Enhance

* org-agenda.el (org-agenda-finalize-entries): Remove spurious
variable in the (let ...) construct.
(org-agenda-limit-interactively): Allow to remove the
limitation by passing a universal prefix argument.  Enhance
the prompt.
org.el (org-open-link-in-comment-or-property): Refactor into `org-open-at-point'

* org.el (org-open-link-in-comment-or-property): Delete.
(org-open-at-point): Handle links in comments and property
drawers.  Update docstring.
Small refactoring and fix a bug in `org-timer-set-timer'

* org.el (org-refresh-property): New function.
(org-refresh-properties, org-set-effort)
(org-property-next-allowed-value): Use it.

* org-timer.el (org-timer-set-timer): Get the correct number
of minutes from text properties, both in an `org-mode' and
`org-agenda-mode' buffer.
org-agenda.el: Implement new effort filter

* org-agenda.el (org-agenda-custom-commands-local-options):
Add `org-agenda-effort-filter-preset'.
(org-agenda-filter-effort-default-operator): Delete.
(org-agenda-local-vars): Add `org-agenda-effort-filter'.
(org-agenda-mode-map): Use "_" to filter by effort.
(org-agenda-effort-filter, org-agenda-effort-filter-preset):
New variables.
(org-agenda-prepare-window, org-agenda-prepare)
(org-agenda-finalize, org-agenda-redo)
(org-agenda-filter-remove-all, org-agenda-filter-apply)
(org-agenda-set-mode-name, org-agenda-reapply-filters): Handle
effort filter.
(org-agenda-finalize-entries): Use
`org-sort-agenda-noeffort-is-high'.
(org-agenda-limit-entries): Get the property from the correct
location.
(org-agenda-limit-interactively): Throw a user error on wrong
input.
(org-agenda-filter-by-effort): New command.
(org-agenda-filter-by-tag): Don't filter by effort.
(org-agenda-filter-make-matcher): Handle effort filter.
(org-agenda-compare-effort): Don't handle the "?" operator.
(org-agenda-filter-show-all-effort): New command.

Note: This calls for some refactoring in the filter area.
org, ox: move defsubst before first use

* lisp/ox.el (org-export-get-parent): Move definition of
  'org-export-get-parent' before first use.  Leave comment at original
  place of definition.

* lisp/org.el (org-uniquify): Move definition of 'org-uniquify' before
  first use.  Leave comment at original place of definition.
org-entities: forward declaration of org-toggle-pretty-entities and org-pretty-entities

* lisp/org-entities.el: Remove superfluous require of org-macs.
  Forward declare 'org-toggle-pretty-entities' and
  'org-pretty-entities'.
ob-C: lexical-let requires cl at compilation time

* lisp/ob-C.el: Require cl during compilation so that lexical-let is
  known.
ob-core:forward declare org-every

* lisp/ob-core.el (org-every): Forward declare 'org-every'.
ob-core, ob-exp, ob-haskell, ob-python: declarations for org-src-preserve-indentations

* lisp/ob-core.el: Add comment to forward declaration of
  'org-src-preserve-indentations'.
* lisp/ob-exp.el: Require org-src to import
  'org-src-preserve-indentations'.
* lisp/ob-haskell.el, lisp/ob-python.el: Remove superfluous forward
  declaration of 'org-src-preserve-indentations', since it gets
  imported by other requires.
Associate all defcustoms to options in back-end definitions

* lisp/ox-ascii.el:
* lisp/ox-beamer.el:
* lisp/ox-html.el:
* lisp/ox-latex.el:
* lisp/ox-man.el:
* lisp/ox-md.el:
* lisp/ox-odt.el:
* lisp/ox-org.el:
* lisp/ox-texinfo.el: All defcustoms are defined as options in the
  back-end.
* lisp/ox-icalendar.el (icalendar): Ditto.  Also rename :with-vtodo
  property to :icalendar-include-todo.

* doc/org.texi (Publishing options): Update back-end specific
  properties.  Remove @vindex entries so as not to clobber variables
  index.

This change allows to change default value for any defcustom on the
fly when publishing.  It also normalizes how to choose and name what
variables to define as back-end options.
ox-latex: Fix 7a956c3880bc0970b2f41ee06762a9ce98918086

* lisp/ox-latex.el (latex): Change property name.  It fixes
  7a956c3880bc0970b2f41ee06762a9ce98918086.
(org-latex-template): Use new property.

* doc/org.texi (Publishing options): Update documentation.  Also fix
  typo.
ox-latex: Fix again 7a956c3880bc0970b2f41ee06762a9ce98918086

* lisp/ox-latex.el (latex): Update property name.
* doc/org.texi (Publishing options): Update documentation.
org: add forward declarations

* lisp/org.el: Add forward declarations for a number of functions that
  the compiler otherwise warns about as potentially undefined at
  runtime.
org.texi: De-uglify some tables

* doc/org.texi (Publishing options): De-uglify tables with a proper
  column width definiton.
org.texi: Small documentation fix

* doc/org.texi (Publishing options): Remove reference to inexistent
  variable.  The associated property is misplaced, too.
Merge branch 'maint'

Conflicts:
	lisp/ob-core.el
	lisp/org.el
	lisp/ox.el
Merge branch 'maint'
Fix aa86e4bc

Thanks to Achim Gratz for pointing this.
Fix aa86e4bc again
org-agenda.el (org-agenda-finalize): Remove duplicate check for 'org-hd-marker

* org-agenda.el (org-agenda-finalize): Remove duplicate check
for 'org-hd-marker.