Iscsi Manager and CLI iSCCI Module

New iSCSI manager has been introduced to conveniently work with iSCSI
service provided by SofyLayer. Respective CLI module has also been
introduced for CLI interaction.
Incorporated suggested changes

corrected command listing style and divided iSCSI section and snapshot section.
First rename, changing the CCIManager to VSManager and created a new CCIManager that subclassed VSManager with a deprecated warning. Used existing tests to verify that code still works.
Renaming CCIManager unit tests and creating tiny set of tests to make sure we didn't break old CCIManager code for folks
Making CLI changes for the new CCI name. Previous 'sl cci' commands should still work
Fixing pylint errors
Added 'virtual' alias for vs
Discovered that packages now have a type I can use for filtering out unnecessary packages. Removed hardcoded package IDs.
Modified filter for ISCSI and snapshot Item price IDs
Updating cancel_hardware() so it can cancel BMC as well. This makes the "sl server cancel" command work for all types of bare metal servers.
Revert "Updating cancel_hardware() so it can cancel BMC as well. This makes the "sl server cancel" command work for all types of bare metal servers."

This reverts commit fd58dfada6a0be2fd9c9cd299f30bc4e54663750.
Making cancel_hardware() work with BMC. This makes the "sl server cancel" command work for all bare metal server types. Also fixed some unit tests I broke.
Made additional changes so it's possible to order both BMC and dedicated servers using the "sl server" commands.
Eliminating the old BMC CLI commands since they're now redundant
Improved the docopt docs with example, etc.
Using custom response inside tests

Fixure Product_Package has too many things which are not required by the iscsi tests. Using return_value from `mock` to test iscsi manager.
Merge branch 'master' into iscsi-manager
Loadbal Initial Support
Pylint issues
Renaming other references to CCIs