puppet: initial suppport for new repo type

This commit contains some modifications to provide initial support
for puppet repositories.  The following is a summary of the changes:

1. add ability to specify repo type (yum, puppet) when creating
   a repo
2. support for syncing a puppet repo
   (Note: sync progress does not show correctly, due to pulp behaviors)
3. support add/remove puppet repos to content view definition
4. support publish/refresh content views
5. support promoting puppet repos through content view promotion
6. support indexing puppet repos during 2, 4 & 5
puppet: gpg key is not needed/used for puppet repo, so hide it

Puppet repos do not use gpg keys; therefore, this commit will
hide/show the 'gpg key' option when creating a repository,
depending on the repo type.
Merge remote-tracking branch 'upstream/master' into puppet

Conflicts:
	app/models/glue/pulp/repo.rb
Fixed broken repo controller test
Merge pull request #2681 from daviddavis/puppet-merge

Merging in master to the puppet branch
Puppet: Exposing repo content_type in API
Merge pull request #2685 from daviddavis/temp/1374771880

Puppet: Exposing repo content_type in API
Merging master pre-runcible-1.0.0 into puppet

Conflicts:
  app/models/glue/pulp/repo.rb
Merge pull request #2721 from daviddavis/puppet-merge

Merging master pre-runcible-1.0.0 into puppet
Merge remote-tracking branch 'upstream/master' into puppet

Conflicts:
	app/models/glue/pulp/repo.rb
Merge pull request #2740 from daviddavis/puppet-merge

Merging in master into puppet
Puppet: Adding tests and bringing puppet code up to date

Fixing places that still used the pre-1.0.0 runcible code and also writing
tests for the puppet code in Katello.
Merge pull request #2746 from daviddavis/temp/20130812120824

Puppet: Adding tests for puppet code
Puppet: Addressing feedback from ehelms in #2751
Merge pull request #2752 from daviddavis/temp/20130813102209

Addressing #2751 feedback
Puppet: Addressing more feedback from #2751
Merge pull request #2753 from daviddavis/puppet

Puppet: Addressing more feedback from #2751
Puppet: Added check for puppet_module.copy call
Merge pull request #2758 from daviddavis/temp/20130813171506

Puppet: Adding check for copy being called
Merge remote-tracking branch 'upstream/master' into puppet

Conflicts:
	app/models/glue/pulp/repo.rb
	test/fixtures/vcr_cassettes/support/repository.yml
	test/fixtures/vcr_cassettes/task_support.yml