org-element: Tiny refactoring

* lisp/org-element.el (org-element-paragraph-parser): Tiny refactoring.
Merge branch 'maint'
server.mk: implement upload targets

* utils/server.mk: Implement `upload´ (create and install everything),
  `upload-elpa´ (create and install ELPA archive),
  `upload-release´ (create and install release archives) and
  `upload-doc´ (create and install manuals).  The server layout is
  hardcoded and the directory structure must be in place, the server
  root is determined via variable $(SERVROOT).
Makefile: deactivate perl scripts unless server configuration is active

* doc/Makefile: Do not use perl scripts in util/ unless the server
  configuration $(SERVERMK) is set.
Merge branch 'maint'
org-taskjuggler.el: Make task and resource properties customizable

* org-taskjuggler.el (org-export-taskjuggler-valid-task-attributes): Add
new option.
(org-export-taskjuggler-valid-resource-attributes): Add new custom
option.
org-taskjuggler.el: Properly install local variables at export time

* org-taskjuggler.el (org-export-as-taskjuggler): Compute opt-plist, use
`org-install-letbind'.
org-taskjuggler.el: Make use of org properties

* org-taskjuggler.el (org-taskjuggler-date): Introduce new function to
produce a taskjuggler-compatible date.
(org-taskjuggler-components): Make use of SCHEDULED/DEADLINE properties.

Infer start and end date from SCHEDULED/DEADLINE information.
org-taskjuggler.el: Fix milestone definition

* org-taskjuggler.el (org-taskjuggler-open-task): Task with end-only is
also a milestone (deadline), task with length is not.
org-taskjuggler.el: Introduce a global header, for early macros

* org-taskjuggler.el (org-export-taskjuggler-default-global-header): Add
new option.
(org-export-as-taskjuggler): Insert global header before anything else.
org-taskjuggler.el: Use project end date, if specified

* org-taskjuggler.el (org-taskjuggler-open-project): Use START - END as
an alternative to START +Xd.
org-taskjuggler.el: Make project umbrella task optional

* org-taskjuggler.el (org-export-taskjuggler-keep-project-as-task): Add
new option.
(org-export-as-taskjuggler): Optionally drop the topmost "task"
(project).
(org-taskjuggler-assign-task-ids): Adapt path computation by optionally
dropping the topmost component (project).

Introduce `org-export-taskjuggler-keep-project-as-task' as a flag to
toggle the behavior. Keep old behavior as default.
org-taskjuggler.el: Disambiguate "headline", as it's a valid attribute
org-taskjuggler.el: Allow reports definition from within the org file

* org-taskjuggler.el (org-export-taskjuggler-report-tag): Add
new option.
(org-export-taskjuggler-valid-report-attributes): Add new option.
(org-export-as-taskjuggler): Compute reports.
(org-taskjuggler-open-report): Generate report from org item.
(org-taskjuggler-insert-reports): Insert default reports only if no
explicit one is defined.
org-taskjuggler.el: Update doc to reflect latest changes
org-taskjuggler.el: Make taskjuggler compatible with org-publish

* lisp/org-publish.el (org-publish-org-to-taskjuggler): New function to
publish taskjuggler projects.
* lisp/org-taskjuggler.el (org-export-as-taskjuggler): Adapt signature
to reflect standard interface, in particular allow export to buffer.
server.mk: add version.mk to distribution archives

* targets.mk: If $(ORGVERSION) and $(GITVERSION) are not defined and
  cannot be determined from Git, try to read `version.mk´.  Fall back
  to "N/A" if still no definition has been made.

* utils/server.mk: Create `version.mk´ for each distribution.  Append
  "-dist" and "-elpa" to $(GITVERSION) to easily recognize builds from
  distribution archives.  Remove `version.mk´ in `cleanrel´ and use
  the same globbing patterns as .gitignore.

* .gitignore: Add "version.mk", also ignore ELPA archive (no ".gz"
  suffix) and only "org-version.el" (no globbing).
Merge branch 'maint'
org-agenda.el (org-agenda-refile): Fix bug when refiling an sticky agenda entry

* org-agenda.el (org-agenda-refile): Fix bug when refiling an
entry from a sticky agenda.

Thanks a lot to Moritz Ulrich for reporting this.
Merge branch 'maint'