I have a fix for ShadowViewPager which I needed in order to prevent a StackOverflowError.

I had come across an issue where my listener was calling back to setCurrentItem(), causing a cyclical recursion and eventual stack overflow. With this fix, the second call to setCurrentItem in the recursion will result in a no-op, allowing the original call to complete.  This matches the logic in the real ViewPager class.