bug in KIFTypist when auto-capitalization is enabled

KIFTypist fails to type a lower-case letter when the keyboard is in auto-capitalize mode.

Normally this doesn't show up in tests because `stepToEnterText:intoViewWithAccessibilityLabel:traits:(UIAccessibilityTraits)traits expectedResult:` corrects for the bug by 'cheating' and manually inserting the character into the text field at [KIFTestStep.m:L470](https://github.com/square/KIF/blob/6bcd663e2409a8c85734edb517924a231dc196a5/Classes/KIFTestStep.m#L470)

This pull requests fixes the issue in KIFTypist. When asked to type a character into the keyboard KIFTypist now removes any initial shift state before typing. 

The pull request also includes an example app with KIF tests to highlight the issue.

Also, it looks like the 'cheat' is not applied if your tests use `stepToEnterTextIntoCurrentFirstResponder:` to type text, meaning KIF would just fail to type the correct text in some cases. This pull request resolves that too.