Fixed migration so now recursively adds channels

- previously migrate would only subscribe to the base channel. Now will add all
  subscribable children as well
Added rollout command.

- rollout command takes a single channel and rolls out an identical channel for
  the next environment up eg dev -> qa.

- this currently assumes that all environments are served from the same server
  in a future commit (when I have access to a second spacewalk server) I will
  add an option to specify that the rollout should sync to a another server,
Altered api_call method and added PKG class

- altered api_call to improve name spacing for other classes e.g. PKG

- Added PKG class.