Delete with_force.rb

The force functionality is tested in already_installed.rb.
Add assertion for existence of manifest.
Parameterize module name and author.
Add assertion for existence of manifest.

Changes to already_installed_elsewhere.rb
* Add assertion for existence of manifest after --force
* Parameterize module name and author
Parameterize module author/name in already_installed_with_local_changes
Refactor module install tests, teardown focus

* Unify teardown to delete all distmoduledir modules and
the sitemodule modules associated with the module variable
and its defined dependencies. (A couple of exceptions
are noted in the code. These will need further refactoring.)
* Change previous instances of the module_name variable to
module_author to better reflect its role.
* Establish module_author, module_name, and module_dependencies
variables in all install tests.
* Delete mkdir calls - the PMT tool should be doing this when
necessary.
Add Puppet::Acceptanc::ModuleUtils module

Add helper methods for testing modules. In this initial commit
the following methods have been added.

    * get_installed_modules_for_host - obtain list of installed
    modules for a specific host
    * get_installed_modules_for_hosts - obtain list of installed
    modules for an array of hosts
    * rm_installed_modules_from_hosts - rm module paths on hosts
    that were not present when the test began
Update teardown to use ModuleUtils helpers on first test
Change teardown of install tests to use ModuleUtils helpers
Remove assert_equal(0, exit_code)

The harness marks steps failed if the exit_code is non-zero
making this line unnecessary.
Fix regex for module paths
Add semver_cmp to Puppet::Acceptance::ModuleUtils module

Add semver_cmp method to compare two semantic version numbers.
Move the semver_to_i method from with_version.rb to the
Puppet::Acceptance::ModuleUtils
No longer validate all of STDOUT and STDERR

In order to make the output interface assertions more robust,
the assertions in these tests have been modified to assert_match
on regex subsets of the the previous STDOUT and STDERR patterns.
Call get_installed_modules_for_hosts inline without creating another var
Implement non-existent implicit directory
Add assert_module_installed to ModuleUtils

Add a an assertion wrapper helper to centralize how the validating
of an installed module is handled.
Allow assert_module_installed to compare version
Remove dependency check already covered by iterator
Change assert_module_installed method

Change assert_module_installed method to assert_module_installed_ui.
This method tests the STDOUT from the CLI command, and thus only
validates how the UI should respond to a given situation.

Pass STDOUT explicitly to the method rather than implicitly.
Add methods to ModuleUtils to assert on disk

Add the following methods to Puppet::Acceptance::ModuleUtils
    * assert_module_installed_on_disk
    * assert_module_not_installed_on_disk
in order to centralize the specification for validating that a
module has been installed on a given system.

Replace existing validation calls in module install tests with these
methods.
Clean up based on Justins review

The core of this branch has focused on the install tests. However,
early commits to expand the suite introduced inconsistencies in
other components of the suite.

This commit specifically addresses these inconsistencies in order
to bring these files into parity with the tests in the install
directory.

Thanks to @justinstoller for bringing these to my attention via
his comments on July 9.
(PE-708) Remove test for obsolete `puppet module clean` command