Support attachments from URLs.

This commit adds support for adding attachments from URLs. Up until now
only files (and file: URLs) were supported. Paths without protocol
string are still assumed to be files on the local file system as before.

This is mainly for adding attachments from resources which might be
within JAR files (as returned by clojure.java.io/resource).