Refactor: Extract issue details formatting into a separate class

--------------------------------------------------------------------------------
Change-Id:     Ia655de0ecf6327cb608c8347cde99f4de7584490
Signed-off-by: Jeff Felchner and Blake Cash <pair+blakecash-jfelchner@example.com>
Refactor: Extract 'is this issue correct?' logic into its own class

--------------------------------------------------------------------------------
Change-Id:     Id109fb97cf93068fb174c28b7b84fd5aeaeac3da
Signed-off-by: Jeff Felchner and Blake Cash <pair+blakecash-jfelchner@example.com>
Refactor: Completely refactor Github::Issue

--------------------------------------------------------------------------------
Change-Id:     Ia7ab50897a6d7c3f0b628c57792c8a0ddbd4353d
Signed-off-by: Jeff Felchner and Blake Cash <pair+blakecash-jfelchner@example.com>
Chore: Add JSCS config file
Chore: Add jshintignore file
Chore: Add scss-lint.yml configuration
Chore: Update gitignore to latest version
Chore: Upgrade git
Chore: Upgrade octokit
Feature: Allow issues to be reassigned when they are started

--------------------------------------------------------------------------------
Signed-off-by: Jeff Felchner <accounts+git@thekompanee.com>
Feature: Allow issues to create branch names based on their information

--------------------------------------------------------------------------------
Signed-off-by: Jeff Felchner <accounts+git@thekompanee.com>
Chore: Add Rubocop config file
Style: Rubocop Fixes
Style: Make whitespace changes
Feature: Allow issues to be matched on type (category) and other attrs

--------------------------------------------------------------------------------
Change-Id:     Ia9ae1c83dd31acf8d67776564e82cec0e011be2b
Signed-off-by: Jeff Felchner <accounts+git@thekompanee.com>
Refactor: Convert Issue over to using a Tracker object

--------------------------------------------------------------------------------
Signed-off-by: Jeff Felchner <accounts+git@thekompanee.com>
Style: Make whitespace changes
fixup! 7b8acb3
Refactor: Rename and update IssueColumnizer to IssueTableFormatter
Refactor: Split responsibility of tabling issues

We're now just going to do the representation of what the table should be as an
array of arrays from the `IssueTableFormatter` and then let the output stream
decide how it would like to convert that into something the user can see.

Additionally, the array returned will include any color information for each
element as the preceding element.

Example:

  [
    [
      [:green],
      'my thing',
    ],
    [
      [:red],
      'my other thing',
    ],
  ]

In this case, you're explaining that 'my thing' should be green and 'my other
thing' should be red.

--------------------------------------------------------------------------------
Signed-off-by: Jeff Felchner <accounts+git@thekompanee.com>