Create abstract issue_requester class.

Much of the functionality in JiraIssueRequester is actually independent
of the endpoint (JIRA, Github, RTC, Bugzilla).  To facilitate better
reuse between the different *IssueRequester classes that spring up,
this commit pulls much of this functionality into an abstract
IssueRequester class.  This class can then be used as a parent for
specific issue requesters.

Issue #7