Set better defaults & accept default w/ enter key

- The standard Unix convention for CLI prompting is that the upper case
character be the default option without needing to specify any input
(pressing enter will choose the default option for the user). This pull
request allows for that to work.

- Stop init from being called twice when run without --force and
a .zenflow config is present
Don't mess w/ a response that is directly passed in

This fixes a regression where zenflow would not accept the branch name directly in the 'zenflow feature start branch_name_here' command.
Cover new logic in self.valid_response? w/ specs

Tests the following:

- If no response is set, set the response to the default option if
a default option is passed in

- Downcase both the response typed in by the user and all options set
programatically so that they will have a higher likelyhood of matching.
  - However, if a response is set programatically do not destructively
downcase it. Note: I'm not entirely sure why, but unless I added this
guard clause to not downcase a passed in option I couldn't set branch
names on the command line directly. It would hang and prompt for
a name.
don't add everything, but make sure we're adding the changelog
Merge branch 'feature/dont-add-everything'
add test for rebase
Merge pull request #7 from jondkinney/fix_default_config_options

Set better defaults & accept default w/ enter key
version bump
clean up the code a little bit
Gem updates.
Pushing tags properly.
Update Gemfile.lock.
Updated README.markdown to fix the badge links
Extend to support internal github installations with a different base url for the API.
Facilities to manage multiple hubs.  Hub-aware Zenflow Init.  Tests.
Moving key references from Hubs to Github (where they make more sense).
Removing unnecessary getters.
Removing a couple of more getters we don't need.
Re-enable tests. Use 'twice' where appropriate.
Change 'base' to 'Base'.