Augmenting existing API smoke test suite.
Overide of `entities.Repository` path method.

Overiding the `path` method for `entities.Repository` so that one can
start the synchronization process. The response returned from a `sync`
job is a task `id` which then could be used to check its status.
Updated smoke test suite for API.

I have now added the steps to create the following entities:

* LifecycleEnvironment (2x)
* Product
* Repositories (YUM and Puppet)
* ContentView

Though there are some more entities to be created, it is necessary to
first handle the synchronization task for both repositories, since
though the process is started, we need to check and wait until it is
completed and check for success.
Make `entities.Repository.path` more robuts.

Made `entities.Repository.path` more robuts by checking if a valid `id`
is passed when ``which == 'sync'`` and added tests.
Added URL constants for repository tests.

Added 2 new constants for real repositories that can be used for real
synchronization tests. Also, updated `smoke` tests to use new constants.
No need to check for `id`.

As per discussion with Jeremy Audet, there's no need to check for the
`id` of a `entities.Repository` when using ``path(which='sync')``.
Merge pull request #1193 from omaciel/add-smoke

Augmenting existing API smoke test suite.
Add host cli factory and positive create test