Create LinuxAdmin::RegistrationSystem
Modify Inheritence
Fix tests related to registration_system commands
Change Rhn class methods to instance methods
Change SubscriptionManager class methods to instance methods
Move subclasses into a folder
Merge pull request #33 from brandondunne/modify_rhn_and_subscription_manager_to_inherit_from_registration_system

Modify rhn and subscription manager to inherit from new registration system class
Change LinuxAdmin.run to return a CommandResult object.

LinuxAdmin.run(cmd).output      - returns the standard output.
LinuxAdmin.run(cmd).exit_status - returns the exit code.
LinuxAdmin.run(cmd).error       - returns the standard errror.
LinuxAdmin.run(cmd) for a bad command will raise the original exception, such as: Errno::ENOENT: No such file or directory.

LinuxAdmin.run! was added to behave similarly to the old run's functionality in that it raises an exception on failures:
1) CommandResultError is raised on a non-zero exit status.
2) The failed system call exception(such as Errno::ENOENT) is raised on a bad command.
Update system related classes to use the new run!/run interface.

run was changed to run! except where we need to check the exit_status, see below.

1) To execute a command for the side effect only.
  Before: run(cmd, :params => params)
  After:  run!(cmd, :params => params)

2) To execute a command and check the exit_status.
  Before: run(cmd, :return_exitstatus => true) == 0
  After:  run(cmd).exit_status == 0

3) To execute a command and capture the output.
  Before: output = run(cmd, :return_output => true)
  After:  output = run!(cmd).output

4) To execute a command and capture the standard error.
  Before: Was not possible previously without redirecting STDERR to STDOUT.
  After:  output = run!(cmd).error
Update package related classes to use the new run!/run interface.

run was changed to run! except where we need to check the exit_status, see below.

1) To execute a command for the side effect only.
  Before: run(cmd, :params => params)
  After:  run!(cmd, :params => params)

2) To execute a command and check the exit_status.
  Before: run(cmd, :return_exitstatus => true) == 0
  After:  run(cmd).exit_status == 0

3) To execute a command and capture the output.
  Before: output = run(cmd, :return_output => true)
  After:  output = run!(cmd).output

4) To execute a command and capture the standard error.
  Before: Was not possible previously without redirecting STDERR to STDOUT.
  After:  output = run!(cmd).error
Fix some specs spawning when they shouldn't be.