Add org-trello recipe
Merge pull request #1769 from puzan/org-trello

Add org-trello recipe
elpa: Scan all package directories.

This also checks if they exist.  Which might even be a problem for
`package-user-dir' on its own for a fresh GNU Emacs install.

* methods/el-get-elpa.el (el-get-elpa-package-directory): Scan all
  package directories and make sure they exist.
elpa: Gracefully error when symlink fails.

This can happen if the package directory is simply deleted but it is
still in the `package-list' and the user tries to re-install the
package.  It is an error but without the patch the error is caused in
`file-relative-name'.

* methods/el-get-elpa.el (el-get-elpa-symlink-package): Gracefully error
  if no directory is found.
elpa: Use `package-delete' to remove packages.

In 24.4, simply removing the package directory is no longer enough. This
will only set the package status to `deleted' but package.el will still
think the package is installed and refuse a re-install. Calling
`package-delete' will ensure the right thing is done.

In 24.3 `package-delete' does only remove the directory so we stick with
that, but loading dired is no longer necessary since emacs 23.2 when
`delete-directory' got the optional RECURSIVE parameter.

* methods/el-get-elpa.el (el-get-elpa-post-remove): Call
  `package-delete' to remove packages.
elpa: refactor compat layer

* methods/el-get-elpa.el
  (package-desc-summary, package-desc-version):
  make aliases to the new 24.4 names.
  (el-get-elpa-delete-package, el-get-elpa-descs): new wrapper functions
  to simulate 24.4 behaviour in 24.3 and below.
  (el-get-elpa-build-local-recipes, el-get-elpa-post-remove,
  el-get-elpa-update-available-p): use the new wrappers/aliases.
el-get-elpa-package-directory: use catch-throw.

* methods/el-get-elpa.el (el-get-elpa-package-directory): use
  catch-throw instead of setting helper variable to achieve early loop
  exit.
Don't cache http checksums.

- If the file was changed on the HTTP server before you restarted emacs,
  the checksum wouldn't be recomputed because it would be taken from the
  cache.

- The cached value was wrongly including the HTTP headers in the
  computation. Added a test for this.

- Computing a SHA1 is not so expensive that it needs the complication of
  caching.

* methods/el-get-http.el
(el-get-http-checksums): remove.
(el-get-http-retrieve-callback): don't compute hash on HTTP headers.
(el-get-http-compute-checksum): always compute a fresh hash.

* test/el-get-issue-1752.el: new test.