emerge-webrsync: Add websync repo type as valid
sync/modules/websync: Make the bash version operational
repository/config.py: Add auto_sync to the override-able  variables
emaint/modules/sync/sync.py: Set portage _sync_mode immediately

This way it will not discard non-existent repos if thier directory does not exist.
_emerge/main.py: Set portage._sync_mode for --sync

This allows repos with non-existent directories to be available.
If the new repo is set for auto-sync, then it can be created with the sync module's new().
portage/sync/modules: Add svn sync module

Module submitted by: David Heidelberger
edits by Brian Dolbec <dolsen>:
Remove CheckSVNConfig class.
Use the default CheckSyncConfig class instead.
Copying the sync-cvs-repo option from the cvs module was incorrect and not needed.
Fixed the new()'s spawn_bash(...) call.
sync/modules/svn: Add snv upgrade to sync operation

This prevents errors when a newer svn has been installed that requires a db upgrade.
sync/syncbase.py: Fix the self.has_bin logic
portage/sync: Add additional output info for unsupported sync-types

Comment out some debug print()'s
Move module.py and progress.py from emaint to portage namespace

This makes it more centrally available as it is used by more than just the emaint module.
moule.py: make path and namepace params mandatory. They are not as easily predictable.