Added support to sync repos via the repository page.

This required tweaking the existing `assert_sync` function at,
ui/sync.py to sync repos via the repository pages.

Added tests to test all the repo types 'yum', 'puppet', 'docker'.
Ah! need to fix that. It's sync.sync_custom_repos