(maint) Add newlines to all files (whitespace only)

Without this patch there are a number of files that do not have
newlines.  This is a problem because it makes it difficult to use
`perl -pl -i -e ...`
(maint) Remove rspec from shebang lines

Without this patch Ruby 1.9 is still complaining loudly about trying to parse
the spec files.

I'd prefer to remove the shebang lines entirely, but doing so will cause
encoding errors in Ruby 1.9.  This patch strives for a happy middle ground of
convincing Ruby it is actually working with Ruby while not confusing it to
think it should exec() to rspec.

This patch is the result of the following command run against the source tree:

    find spec -type f -print0 | \
      xargs -0 perl -pl -i -e 's,^\#\!\s?/(.*)rspec,\#! /usr/bin/env ruby,'
(Maint) Remove loader test dependence on ENV

Previously the test for checking that FACTER_* environment variables get
turned into facts was sensitive to the actual environment variables with
which the test ran. This caused incorrect test failures if there was
such an environment variable during the test run. This changes the
loader to be able to be given the environment hash that it should look
at and changes the tests to stop relying on the environment for testing.

Conflicts:
	lib/facter/util/loader.rb
	spec/unit/util/loader_spec.rb
(Maint) Remove unneeded mocking

There were mocks for something called 'settings', which were never used.
This removes them.
Document Facter API with YARD

This adds YARD documentation with `@api public` tags to the public API for
facter. This is a first pass, so it's probably missing some things that should
be considered public.

Conflicts:
	lib/facter/util/fact.rb
	lib/facter/util/resolution.rb
Use the API to test resolution weight
(doc) Update COMMITTERS and CONTRIBUTING

Without this patch the documentation describing our workflow and process
is out of date for Facter.  This is a problem because community
contributors and people new to Puppet Labs have a more difficult time
learning how to submit contributions and merge contributions into the
codebase.

This patch addresses the problem by copying the COMMITTERS and
CONTRIBUTING documents from Puppet and customizing them specifically to
Facter.

[ci skip]
(maint) Update link to the contributor license agreement

New link: http://links.puppetlabs.com/cla as per Eric.

[ci skip]
Merge pull request #574 from adrienthebo/facter-2-backports

Backport non-functional changes from master to facter-2
Merge branch 'facter-2'

Conflicts:
	lib/facter/util/fact.rb
	lib/facter/util/resolution.rb
	spec/unit/util/loader_spec.rb