enable to run on ruby 1.8.7 (el6)

Use case:

I'd like to use https://github.com/garethr/hiera-etcd to
provide an etcd backend for hiera on my puppetmaster.
But I must use RHEL 6.5, which only ships with ruby 1.8.7.

I'm aware of Software Collections on RHEL 6, but
PuppetLabs doesn't yet support software collections.
https://tickets.puppetlabs.com/browse/PUP-1112

I'd deploy puppetmaster on RHEL 7 (Ruby 2.x), but
el7 doesn't have the passenger gem available yet.

Changes:

* Enforce ruby 1.8.7 hashrocket style and update via:
  `bundle exec rubocop --only='Style/HashSyntax' -a`

* Handle differences in net/http codebase between 1.8 and 1.9+.

* On ruby 1.8, use popen in test harness within daemonize.
  I tried posix-spawn gem, but it falls back to invoking
  a command via a subshell on ubuntu, which means the pids
  don't match up correctly.

* Exclude rubocop and coco in bundle on ruby 1.8 to
  avoid pulling in deps like celluloid and rainbow.
gitignore downloaded etcd tarball and bin dir
resolve rubocop config changes in latest version

Resolves:

    AllCops/Includes was renamed to AllCops/Include

    Warning: Deprecated pattern style 'lib/**' in .rubocop.yml.
    Change to 'lib/**/*'
resolve rubocop failures in latest version
avoid deprecation warnings from rspec-mocks

Resolves:

    Using `any_instance` from rspec-mocks' old `:should` syntax without
    explicitly enabling the syntax is deprecated. Use the new `:expect`
    syntax or explicitly enable `:should` instead.

    Using `should` from rspec-expectations' old `:should` syntax
    without explicitly enabling the syntax is deprecated. Use the new
    `:expect` syntax or explicitly enable `:should` instead.