Removed the temp work around from subnet module
Fixed OS tests to assert after updating its diff entities
Added new make_product method to factory.py.

Added a new make_product method to handle CLI tests.
Remove empty "" from standard CLI output.

When a field does not have any data, hammer cli returns an empty ""
which then gets converted to u'""'. Trying to assert if a field is None
or if its length is equal to zero was failing, so now I replace '""'
with ''.
Adding CLI tests for Products.

This handles Issue #182 and adds CL CRUD tests for hammer product command.
Added more CLI tests for Products.

Added CRUD CLI tests for products. This closes issue #182.

```bash
$ nosetests -c robottelo.properties tests/cli/test_product.py
2014-03-26 16:32:27 - robottelo - INFO - Paramiko instance prepared (and would be reused): 0x1026b4150
@Test: Check that only valid names can be used ... ok
@Test: Check that only valid names can be used ... ok
@Test: Check that only valid names can be used ... ok
@Test: Check that only valid names can be used ... ok
@Test: Check that only valid names can be used ... ok
@Test: Check that only valid names can be used ... ok
@Test: Check that only valid labels can be used ... ok
@Test: Check that only valid labels can be used ... ok
@Test: Check that only valid labels can be used ... ok
@Test: Check if product can be created with random names ... ok
@Test: Check if product can be created with random names ... ok
@Test: Check if product can be created with random names ... ok
@Test: Check if product can be created with random names ... ok
@Test: Check if product can be created with random names ... ok
@Test: Check if product can be created with random names ... ok
@Test: Check if product can be created with random labels ... ok
@Test: Check if product can be created with random labels ... ok
@Test: Check if product can be created with random labels ... ok
@Test: Check if product can be created with random labels ... ok
@Test: Check if product can be created with random labels ... ok
@Test: Check if product can be created with random labels ... ok
@Test: Check if product can be created with random description ... ok
@Test: Check if product can be created with random description ... ok
@Test: Check if product can be created with random description ... ok
@Test: Check if product can be created with random description ... ok
@Test: Check if product can be created with random description ... ok
@Test: Check if product can be created with random description ... ok
@Test: Check if product can be created with gpg key ... ok
@Test: Check if product can be created with gpg key ... ok
@Test: Check if product can be created with gpg key ... ok
@Test: Check if product can be created with gpg key ... ok
@Test: Check if product can be created with gpg key ... ok
@Test: Check if product can be created with gpg key ... ok
@Test: Check if product can be created with sync plan ... SKIP: Test not implemented
@Test: Check if product can be created with sync plan ... SKIP: Test not implemented
@Test: Check if product can be created with sync plan ... SKIP: Test not implemented
@Test: Check if product can be created with sync plan ... SKIP: Test not implemented
@Test: Check if product can be created with sync plan ... SKIP: Test not implemented
@Test: Check if product can be created with sync plan ... SKIP: Test not implemented
@Test: Check if product can be deleted ... ok
@Test: Check if product can be deleted ... ok
@Test: Check if product can be deleted ... ok
@Test: Check if product can be deleted ... ok
@Test: Check if product can be deleted ... ok
@Test: Check if product can be deleted ... ok
@Test: Update the description of a product ... ok
@Test: Update the description of a product ... ok
@Test: Update the description of a product ... ok
@Test: Update the description of a product ... ok
@Test: Update the description of a product ... ok
@Test: Update the description of a product ... ok
@Test: Update the label of a product ... ok
@Test: Update the label of a product ... ok
@Test: Update the label of a product ... ok
@Test: Update the label of a product ... ok
@Test: Update the label of a product ... ok
@Test: Update the label of a product ... ok
@Test: Update product's gpg keys ... ok
@Test: Update product's gpg keys ... ok
@Test: Update product's gpg keys ... ok
@Test: Update product's gpg keys ... ok
@Test: Update product's gpg keys ... ok
@Test: Update product's gpg keys ... ok
@Test: Update product's sync plan ... SKIP: Test not implemented
@Test: Update product's sync plan ... SKIP: Test not implemented
@Test: Update product's sync plan ... SKIP: Test not implemented
@Test: Update product's sync plan ... SKIP: Test not implemented
@Test: Update product's sync plan ... SKIP: Test not implemented
@Test: Update product's sync plan ... SKIP: Test not implemented

----------------------------------------------------------------------
XML: foreman-results.xml
----------------------------------------------------------------------
Ran 69 tests in 881.441s

OK (SKIP=12)
```
More assertions for gpg update tests.

Added assertions to test where multiple gpg keys are created and a
product is updated to include one or the other.
Merge branch 'master' into rm-subnet-hack

Conflicts:
	robottelo/ui/subnet.py
created a fn 'get_selected_entities' to avoid duplication
Merge pull request #579 from omaciel/add-products-cli

Added CRUD CLI tests for products. This closes issue #182.
Merge pull request #572 from kbidarkar/rm-subnet-hack

Removed the temp work around from subnet module
updated fn name and updated exception under else part
Fix import to make api tests green again
Merge pull request #585 from elyezer/fix-api-tests

Fix import to make api tests green again
Change syntax of list comprehension to work on RHEL 6 (Python 2.6)
Fixed unittest module incompatibility with Python 2.6
Whitespaces
Simplify as per elyezer's idea (https://github.com/lhellebr/robottelo/commit/624ac43e5a4afba313d7363dfd8964f581459805#commitcomment-5810048)
Merge pull request #586 from jhutar/master

Make robottelo work on RHEL 6 / Python 2.6
Merge pull request #582 from sghai/fix-assertion

Added a fn to assert the updated entities under OS