Rakefile: only require bundler portion of repo libs

Addresses bundler error during dev when running `rake spec'.

* Before this commit: If you attempt to require a gem from within
  lib/jumanjiman_spec_helper/*.rb ("sub-libs")...

  - `rake spec' fails with LoadError
  - `bundle exec rake spec' succeeds

* After this commit: sub-libs can require additional gems and...

  - `rake spec' succeeds
  - `bundle exec rake spec' succeeds

Signed-off-by: Paul Morgan <jumanjiman@gmail.com>
git: add lib to configure local git repo

Use cases:

* Discover the repo root

* Provide settings in .repo/config that get merged into .git/config.
  For example, you may want to set an upstream URL that gets added
  to .git/config.

New unit tests:

    spec/fixtures
      source.ini has the expected content
      target.ini has the expected content

    JumanjimanSpecHelper::Git
      repo_root
        is an absolute path
        contains .git dir
      git_config_path
        is an absolute path
        returns path to .git/config
      repo_config_path
        is an absolute path
        returns path to .repo/config
      config_data(path)
        returns nil if path does not exist
        returns ini data if path exists
      update_git_config
        when .repo/config does not exist
          does not change .git/config
        when .repo/config exists
          modifies .git/config
          adds keys to .git/config
          overrides keys in .git/config
          substitutes 'REPO_ROOT' with real repo_root
          preserves keys in .git/config that are not in .repo/config

Signed-off-by: Paul Morgan <jumanjiman@gmail.com>
repo config: add minimal settings

Provide a minimal configuration that is applied to the local
git repo, overriding user-default personal preferences. This
is not a dumping ground; it's intended to provide consistency.

The upstream remote should use either https or git protocol
(not ssh) to ensure that continuous integration tools do not
need special configuration. This is a public repo; strong
authentication should not be needed for CI.

New unit test:

    .repo/config
      does not use ssh for upstream remote
move require 'gem' outside of modules

This commit affects how bundler treats this gem
when required as a dependency from another gem.

Before this commit:
* `rake -T' fails to load deps that are required within modules
* `bundle exec rake -T' works

After this commit:
* `rake -T' works on its on
* `bundle exec rake -T' still works
improve bundler setup