Made X509-related types public

This is a necessary step to make possible to implement different
IX509CertificateDatabase providers and remove the dependency on
Mono.Data.Sqlite.
Removed dependency on Mono.Data.Sqlite

SqliteCertificateDatabase now loads Mono.Data.Sqlite using reflection and
doesn't depend on it explicitly. A new property "IsAvailable" can be used
to determine if SQLite support is available at runtime.

DefaultSecureMimeContext now checks for SQLite support at runtime and
throws an exception if not available. This can be replaced by a better
behaviour in the future (using a different IX509CertificateDatabase) or
left as is.
Merge pull request #48 from fogzot/master

Removal of Mono.Data.Sqlite dependency