add a "step" argument to range()

This patch adds an optional "step" argument to the stdlib range()
function.  There is no change to the default behavior of the function;
however, passing a numeric "step" argument invokes the Ruby Range#step
method, e.g.

    range("0", "9", "2")

returns

    [0,2,4,6,8]
changed .count to .size to support legacy ruby
Merge branch 'master' of git://github.com/puppetlabs/puppetlabs-stdlib
check if an argument supposed to be merged is empty to
pass over undefs without failing
fix in merge.rb: refine the checking if an argument is an empty string
Added rspec tests for the new behaviour of merge accepting empty strings

added test that '' is accepted
changed a test that a number is correctly rejected with a type error
Update Modulefile, CHANGELOG for version 4.1.0

This commit alters the module metadata to indicate a 4.1.0 version
release for the Puppet Forge. It contains backwards compatible
features, refactors and bug fixes.

CHANGELOG updated by JJM
Merge branch 'puppetlabs-release/four_one_oh'

* puppetlabs-release/four_one_oh:
  Update Modulefile, CHANGELOG for version 4.1.0

closes #154
(#20684) Add array comparison functions, difference, intersection and union.

Included is code, tests and documentation for the difference, intersection
and union functions for comparing arrays.
Merge pull request #147 from mhellmic/master

don't fail on undef variable in merge
Merge pull request #155 from AlexCline/feature/master/array_comparison_functions

(#20684) Add array comparison functions, difference, intersection and union
Trivial documentation fix
Merge pull request #157 from rohanrns/master

Trivial documentation fix for upcase function.
Add functions to validate ipv4 and ipv6 addresses
Ruby 2.0 introduces IPAddr::InvalidAddressError
Update ipv6 examples
Don't run certain tests under 1.8.7
Adding base64 function

Adding base64 function and spec test.  Included a bonus fix to
validate_slength_spec.rb to put the expectation message in the right
place.
Merge pull request #159 from fiddyspence/feature/base64

Adding base64 function
Merge remote-tracking branch 'pr/56' into pull-56

Conflicts:
	lib/puppet/parser/functions/range.rb
	spec/unit/puppet/parser/functions/range_spec.rb