Revert "On Linux, use dlopen to load libssl"

We don't need libssl at all with the new ocurl, so remove this extra
complexity. Linux distributions can link to openssl directly if they
want (without dlopen), while for the portable binaries we'll use the
latest ocurl and avoid any dependency.

This reverts commit 09bd2ffdba3836cc255de53440869f693383016e.
Revert "On Linux, use dlopen to load libcrypto"

For the generic binaries, we'll use ocaml-sha instead to avoid dynamic
linking problems.

This reverts commit a476b349df2cb78d851a28733928d65aa68ee95f.
Added hash.mli interface
Use "sha" package for hashes if available

This avoids the need to depend on openssl's libcrypto.
Use Curl 0.7.1's Lwt support, if available

This avoids the need for preemptive threads, removing the dependency on
openssl, which improves binary compatibilty.
Merge no-OpenSSL branch

If ocaml-sha and ocurl >= 0.7.1 are available, we don't need to depend
on OpenSSL at all (it might still get used at runtime if libcurl uses
it, but we don't use it directly). This should avoid binary portability
problems with openssl and seems like a better solution than the previous
dlopen stuff.