Revert "fix: provides are not recognized for erase command. (RhBug:1087063)"

This reverts commit a4ca8bff5f99adbbf76fa13210c885e19dca6620.

This feature makes CLI commands inconsistent (the others look for providse
too). Also: 'dnf install syslog && dnf erase syslog' fails with nothing to
remove in the second step. Lastly, the Base.remove() API call still does
look for provides of course, so this would introduce further discrepancy
between CLI and API.
cosmetics: leave around the good things from 660c3e5 (documentation, UT).
removed dummy_wrapper from yum/i18n.py
removed exception2msg from yum/i18n.py
removed str_eq from yum/i18n.py
removed utf8_valid from yum/i18n.py
moved _, P_ to dnf/i18n.py
make all strings unicode_literals implicitly
removed to_unicode from yum/i18n.py
removed utf8_width_fill from yum/i18n.py
removed utf8_width from yum/i18n.py
removed utf8_text_fill from yum/i18n.py
removed to_str from yum/i18n.py
removed to_utf8 from yum/i18n.py
fixed import errors after yum/i18n.py removal
added forgotten import
added --refresh option (RhBug:1064226)
cosmetic: reordered import statements
doc: faq: why we don't check for root. (RhBug:1088166)
groups: redo the GroupPersistor class.

The old one has a serious design issue that it doesn't allow for storing
additional metadata, i.e. the clients (comps) are directly bound to the
serializaiton (json) mechanism. Adding new attributes is very hard.