Get the part finding an attachment out of `org-attach-open'.

* lisp/org-attach.el (org-attach-find-file): Created
* lisp/org-attach.el (org-attach-open): Make use of `org-attach-open'

This will allow other functions to make use of the `org-attach-find-file'
feature.
Add a support to create a link to an attachment of the current entry.

* lisp/org-attach.el (org-attach-open-link, org-attach-complete-link): Created

Also, add a call to `org-add-link-type' to make use of the feature.

The user may use attach:name_of_the_file to link to the attachment. The name
will be expanded using `org-attach-find-file'.

Thanks to `org-attach-complete-link', the user is proposed possible attachments
when interactively creating the link.
Fix the call to `org-expiry-handler-function'.

* contrib/lisp/org-expiry.el (org-expiry-process-entry): Fix the call to
`org-expiry-handler-function'.

`org-expiry-handler-function' is meant to be a variable containing the symbol of
a function to be called. Therefore, calling
(funcall 'org-expiry-handler-function) results in a void function error while
(funcall org-expiry-handler-function) correctly calls the contained function.
Make use of `org-insert-heading' instead of inserting the * character

* lisp/org-agenda.el (org-agenda-insert-diary-as-top-level): Make
  use of `org-insert-heading' instead of inserting the * character

Therefore, the hooks associated to the insertion of a heading will
be triggered.