Don't expose some internal modules because yi-pango is no longer separate package.
Make rosezipper dependency conditional.
Make ghc-paths dependency conditional.
Remove imports of two operators nobody uses
Make pureMD5 dependency conditional.
Fix some ghc warnings.
Revert "Remove imports of two operators nobody uses"

This reverts commit bad5f6ea6f75c4f5cebc29b346c6e2ad29850f89.

Actually, people use both Yi.Prelude.(%=) and Yi.Config.Simple.(%=)
in configs, so removing one of them breaks yi-contrib.

I suspect that having two similar, but not identical operators with the
same name is not very good.
Merge pull request #428 from ethercrow/refactoring2

Clean up depends and exposed modules in yi.cabal and fix some ghc warnings.