Implement --read-news (off by default)

Turn off news-reading by default when --ask, and instead make it an
option --read-news.

Apparently making --ask a bit more interactive was "goddamn stupid" and
ruined the lives of several Gentoo developers. Props to Michał who
predicted this all along.

ACKed-by:      Brian Dolbec       <dolsen@gentoo.org>
Signed-off-by: Alexander Berntsen <bernalex@gentoo.org>
Fix travis test failures due to setup.py installing future sbin scripts in bindir
Move _emerge.sync module to portage namespace

Update the import paths
Move action_metadata to portage's namespace

Remove redundant/unneeded os.umask calls
Initial creation of the sync controller and a modules subdir
Initial creation and porting of an rsync module

Update the userquery import and use.
Userquery has been made a new class in a new file.
This change uses the new UserQuery class.
Initial creation and porting of a git module

Move git_sync_timestamps() to the new git sync module
Initial creation and porting of a cvs module
Initial removal of _sync_repo() and use the new SyncManager class

Move the SyncManager initialization out of the loop
Make the returncode not bail out of syncing the remaining repos.
Update the return info to match expectations
Move some local variables to classwide ones.
Rsync module, add exists() and new()
Separate out the actual sync code to a private function.

Fix new() to  return _sync().
Fix sync() to return new() or  _sysnc().
Add auto-clone support for git sync

Make the git sync module clone the upstream repository if the directory
specified in repos.conf isn't a git directory. Fixes bug 485402.
Move several git vars to be part of the object like in rsync
Add exists() and new() functions, make sync() private and add new sync
pointing either to new() or _sync().
Extend the module_spec with the new functions.
Fix mixed spaces/tabs, update _sync to not take kwargs since it's
an internal function
Update module spec for git
Bring CVS module up to current module spec

Add exists(), new(), _sync() as in the git and rsync classes. Clean up
output style to use logger and writemsg_level instead of straight print
statements